mmsystem.c patch to prevent callback wedging.

Simon Britnell ughbash at
Thu Nov 1 03:03:08 CST 2001

This patch creates a new thread which does nothing but
execute callbacks.

The callbacks are queued from various other threads
via messages through a unix pipe.

This allows DriverCallback to return immediately
rather than waiting for the application.

This, in turn means that (for example) wodPlayer
thread cannot be wedged by the application if the
application calls wodRestart, wodReset, wodPause or
wodClose (all of which block waiting for wodPlayer
thread to perform a particular task) from a callback

This has been tested only with halflife so far.

Do You Yahoo!?
Make a great connection at Yahoo! Personals.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: wedge.patch
Type: application/octet-stream
Size: 3823 bytes
Desc: wedge.patch
Url :

More information about the wine-patches mailing list