More debugger quesions

Eric Pouech eric.pouech at
Sun Sep 4 02:54:07 CDT 2005

Robert Lunnon a écrit :
> OK I am back onto the trail but the code doesn't make sense to me
> Continue Debug Event Sends a message continue_debug_event to the wineserver 
> which ends up in this function in thread.c

basically what happens:
let's call P the process that sends the debug event (ie the process being 
debugger) and D the debugger

- P gets an exception, and first wants to notify the debugger
- P calls queue_exception_event in wineserver
- WS (wineserver) then suspends P (ie signals every thread of P with SIGUSR1)
- WS queues debug event
- D gets the event (wait_debug_event)
- D handles the event
- D informs WS it's done with the event (continue_debug_event)
- WS then resumes every thread of P (that's the wakeup_thread function)
- P (in fact the thread that queued the event) resumes and can fetch the result 
of the handling of the debug event

Eric Pouech

More information about the wine-devel mailing list