http://bugs.winehq.org/show_bug.cgi?id=28388
Jörg Höhle hoehle@users.sourceforge.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |julliard@winehq.org
--- Comment #18 from Jörg Höhle hoehle@users.sourceforge.net 2011-10-29 16:42:03 CDT --- No schedtool here on my MacOS. Where does that come from? Looks like Linux only.
No deadlock in >4300 iterations on MacOS after SuspendThread commented out (of course this causes test failures).
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?
Regardless of a possible bug in Wine's handling of thread suspension, the MIDI player ought to be changed such that midiStreamRestart and Pause do not depend on SuspendThread. Beside winmm:midi, only qcap:v4l uses that.