"Christian Costa" <[EMAIL PROTECTED]> wrote:My patch was intended to fix a deadlock with the thread of the wave driver not with the async one.
Are you sure this is usefull.
How can SetEvent cause a deadlock?
That's exactly the same case your recent patch has fixed.
SetEvent causes a reschedule in Wine (since it does a call to the server) that may help avoiding a deadlock
but this only hides the problem.
Do you have a test app?If the MCI command was sent asynchronously (without MCI_WAIT) an thread gets created and the command gets executed there.
So, if an app does: mciSendCommand(MCI_PLAY); // an async thread gets created and right after that: mciSendCommand(MCI_STOP);
last command hangs forever.
BTW, I've found more wave calls to "protect", will send a patch. :-)
Bye, Christian