Hi,
While running your changed tests on Windows, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at http://testbot.winehq.org/JobDetails.pl?Key=16276
Your paranoid android.
=== WVISTAADM (32 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== W2K8SE (32 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== W7PRO (32 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== W7PROX64 (32 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== TEST64_W7SP1 (32 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== W7PROX64 (64 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
=== TEST64_W7SP1 (64 bit wave) === wave.c:658: Test failed: waveOutOpen(0): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=MMSYSERR_INVALPARAM(An invalid parameter was passed to a system function.) wave.c:658: Test failed: waveOutOpen(WAVE_MAPPER): format=22050x 8x1 flags=50000(CALLBACK_EVENT) rc=WAVERR_BADFORMAT(The specified format is not supported or cannot be translated. Use the Capabilities function to determine the supported formats.)
Hi,
Your paranoid android. === WVISTA/W2K8/W7
It's good that I kept the patch to code and tests separated. The code one should go in, the tests obviously not (it's not easy to add a broken specific to that case in wave.c). They tell us that with the introduction of mmdevapi, MS incompatibly changed the code that checks the validity of WAVE_FORMAT_PCM. I argue that Wine ought to accept the bad blockalign formats, because w95/w98/w2k/wxp did render them (check with WINETEST_INTERACTIVE and listen) and some apps used that (that's why I started investigating this issue at all). Perhaps the nextp SP will bring compatibility to w7 too?
BTW, regarding [PATCH 1/2] winealsa: Unify the checks for wBitsPerSample. despite 1/2, it can be applied on its own, should you object 2/2. That why I split it.
Regards, Jörg Höhle