[Bug 27087] Space Empires: Star Fury hangs with sound enabled (Alsa full hw. acceleration)

wine-bugs at winehq.org wine-bugs at winehq.org
Wed May 25 12:30:21 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=27087

--- Comment #10 from Jörg Höhle <hoehle at users.sourceforge.net> 2011-05-25 12:30:20 CDT ---
> > what happens if you set win.ini[Sounds] to one of those very short files
> > and issue the MCI sound command a few times?
> wintest.exe mcishell hangs in the same way as the game with those short wavs.
> No sound was playing and I had to interrupt the shell by <Ctrl+C>.
Great, this is a super simplification of the bug!

The bug is now as simple as it can get.
DSound (mmap) is not involved.
You need no more than my MCI shell (full source, please add keyword)

Playsound writes a single buffer (1088 bytes) to ALSA.
This is smaller than ALSA's period_size (940 frames).

Nevertheless, Wine expects ALSA to signal that playing ends, by way of
snd_pcm_avail_update().  This does not happen.
As a result, WOM_DONE is never called, and the player hangs.

Surprisingly, I can now reproduce the bug!
in Ubuntu Intrepid -- after killing PulseAudio (is that all that changed?)

Reproduce with:
Add to drive_c/windows/win.ini:
[intl]...
[Sounds]
SystemExclamation=/home/.../UIButtonPress.wav

wintest.exe mcishell (see bug #20232, comment #10)
sound SystemExclamation wait notify
-> hangs

BTW, SystemExclamation is the sound alias used by the winmm:mci testsuite.
Configure your win.ini as above, run Wine's testsuite and it will now hang.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the wine-bugs mailing list