[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.
More information about the lldb-commits