http://bugs.winehq.org/show_bug.cgi?id=28388
--- Comment #19 from Alexandre Julliard julliard@winehq.org 2011-10-29 17:11:23 CDT --- (In reply to comment #18)
Everyone will argue that SuspendThread is bad design anyway, but I'd expect that function to either prevent scheduling that thread or to pause outside system level code, not to freeze it while executing system (ntdll heap management) code. MSDN says "to stop executing user-mode (application) code". Does that indicate a bug with SIGUSR1 handling in Wine?
No, SuspendThread can suspend anywhere, including inside a lock. There's essentially no safe way to use it. Any design that relies on it is broken.