[Lldb-commits] [PATCH] D17635: Continue after process exit

Jim Ingham via lldb-commits lldb-commits at lists.llvm.org
Fri Feb 26 10:02:20 PST 2016


jingham requested changes to this revision.
jingham added a reviewer: jingham.
jingham added a comment.
This revision now requires changes to proceed.

I agree with Zachary, it would be better to put it in PrivateResume before the call to WillResume.  Having this happen in Process::PrivateResume after taking the run lock is okay, that works correctly on OS X.

OTOH, the error reporting isn't correct there:

> > > lldb.process.Continue()

> 

> > 

> 


<lldb.SBError; proxy of <Swig Object of type 'lldb::SBError *' at 0x10b9e7c00> >
Process 64883 exited with status = 0 (0x00000000)

> > > error = lldb.process.Continue()

> 

> > 

> 

> > >  print error

> 

> > 

> 


error: Resume timed out.

So this definitely needs fixing generically...

Process::WillResume only gets called in one place (Process::PrivateResume) so it is fine to just put the check there before calling WillResume.  When we have generic bits of work we want to do before or after a plugin method X we often make a virtual "DoX" and have that be the plugin method, and then X is not virtual and does the generic work.  But that seems overkill in this case, we just want to make sure the process is alive before calling into the plugins.


http://reviews.llvm.org/D17635





More information about the lldb-commits mailing list