Hi all,

I noticed a race condition where a process is launched and hits a breakpoint 
while CommandObjectProcessLaunch is still in DoExecute. The effect I'm seeing 
is that if Process::WaitForProcessToStop() is called on a stopped process, LLDB 
hangs.

This patch fixes the issue by checking the process state before calling 
WaitForProcessToStop from CommandObjectProcessLaunch. I think there might still 
be a race condition in between getting the state and checking if 
StateIsStoppedState, but I'm not sure what process mutex to acquire in the 
command object while checking the state, or if that approach is any better..

Comments welcome!

Thanks,
Dan

Attachment: command_object_process_check_state.patch
Description: command_object_process_check_state.patch

_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits

Reply via email to