[PATCH] dsound/tests: Handle broken E_FAIL of broken AC97 driver
Detlef Riekenberg
wine.dev at web.de
Sun Oct 14 16:39:46 CDT 2012
Found on XP with Realtec AC97 Audio
http://test.winehq.org/data/ee59341721b90e58165a7bb12cbf2906fbd680d1/xp_dr-xp-sigi/dsound:dsound.html
--
By by ... Detlef
---
dlls/dsound/tests/dsound.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/dsound/tests/dsound.c b/dlls/dsound/tests/dsound.c
index 5b941a3..ad17d54 100644
--- a/dlls/dsound/tests/dsound.c
+++ b/dlls/dsound/tests/dsound.c
@@ -1535,7 +1535,7 @@ static void test_hw_buffers(void)
trace("dwMaxHwMixingStreamingBuffers: %u\n", caps.dwMaxHwMixingStreamingBuffers);
for(i = 0; i < caps.dwMaxHwMixingAllBuffers; ++i){
hr = IDirectSound_CreateSoundBuffer(ds, &bufdesc, &secondaries[i], NULL);
- ok(hr == S_OK || hr == E_NOTIMPL || broken(hr == DSERR_CONTROLUNAVAIL),
+ ok(hr == S_OK || hr == E_NOTIMPL || broken(hr == DSERR_CONTROLUNAVAIL) || broken(hr == E_FAIL),
"CreateSoundBuffer(%u) failed: %08x\n", i, hr);
if(hr != S_OK)
break;
@@ -1553,8 +1553,9 @@ static void test_hw_buffers(void)
(caps.dwMaxHwMixingAllBuffers == 0 && hr == DSERR_INVALIDCALL) || /* no hw buffers at all */
hr == E_NOTIMPL || /* don't support hw buffers */
broken(hr == DSERR_CONTROLUNAVAIL) || /* vmware winxp, others? */
+ broken(hr == E_FAIL) || /* broken AC97 driver */
broken(hr == S_OK) /* broken driver allows more hw bufs than dscaps claims */,
- "CreateSoundBuffer gave wrong error: %08x\n", hr);
+ "CreateSoundBuffer(%u) gave wrong error: %08x\n", i, hr);
if(hr == S_OK)
IDirectSoundBuffer_Release(secondary);
--
1.7.5.4
More information about the wine-patches
mailing list