mciavi: Prevent deadlock when closing while playing or when paused.

Maarten Lankhorst m.b.lankhorst at gmail.com
Thu Mar 11 06:30:09 CST 2010


Hi Joerg,

2010/3/11  <Joerg-Cyril.Hoehle at t-systems.com>:
> Hi,
>
> alas, even though mciavi contains lots of Critical Sections,
> it's not enough to protect against 2 threads calling Play and Close
> concurrently.  I believe something entirely different would be
> needed: either a complete serialization of messages (like the OSS
> and ALSA drivers), or a concept of transactions.
That code sucks and as soon as possible I'm getting rid of it. Don't
duplicate it please. It can be done without such a horrible ring
buffer design, since there is really no reason to have a separate
thread alive for audio. Using a winmm timer there would remove the
need for that thread altogether, and as part of my sound rewrite I
will write a new winmm driver that forwards to the new audio api,
regardless of what that api might be. So rest of wine-devel, don't
restart the flamewar in this thread. ;)

Cheers,
Maarten



More information about the wine-devel mailing list