Commit 0a16d361 authored by Robert Reif's avatar Robert Reif Committed by Alexandre Julliard

Don't consider a device in use a failure.

parent c2dcecc3
...@@ -446,8 +446,8 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription, ...@@ -446,8 +446,8 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
} else if (rc==DSERR_BADFORMAT) { } else if (rc==DSERR_BADFORMAT) {
ok(!(dsccaps.dwFormats & formats[f][3]), ok(!(dsccaps.dwFormats & formats[f][3]),
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a " "IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
"capture buffer: format listed as supported but using it failed\n"); "capture buffer: format listed as supported but using it failed\n");
if (!(dsccaps.dwFormats & formats[f][3])) if (!(dsccaps.dwFormats & formats[f][3]))
trace(" Format not supported: %s\n", format_string(&wfx)); trace(" Format not supported: %s\n", format_string(&wfx));
} else if (rc==DSERR_ALLOCATED) } else if (rc==DSERR_ALLOCATED)
trace(" Already In Use\n"); trace(" Already In Use\n");
......
...@@ -94,10 +94,15 @@ static void IDirectSound_test(LPDIRECTSOUND dso, BOOL initialized, ...@@ -94,10 +94,15 @@ static void IDirectSound_test(LPDIRECTSOUND dso, BOOL initialized,
DXGetErrorString8(rc)); DXGetErrorString8(rc));
rc=IDirectSound_Initialize(dso,lpGuid); rc=IDirectSound_Initialize(dso,lpGuid);
ok(rc==DS_OK||rc==DSERR_NODRIVER,"IDirectSound_Initialize() failed: %s\n", ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "IDirectSound_Initialize() failed: %s\n",DXGetErrorString8(rc));
if (rc==DSERR_NODRIVER) if (rc==DSERR_NODRIVER) {
trace(" No Driver\n");
return;
} else if (rc==DSERR_ALLOCATED) {
trace(" Already Allocated\n");
return; return;
}
} }
/* DSOUND: Error: Invalid caps buffer */ /* DSOUND: Error: Invalid caps buffer */
...@@ -210,21 +215,22 @@ static void IDirectSound_tests() ...@@ -210,21 +215,22 @@ static void IDirectSound_tests()
/* try with no device specified */ /* try with no device specified */
rc=DirectSoundCreate(NULL,&dso,NULL); rc=DirectSoundCreate(NULL,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER,"DirectSoundCreate(NULL) failed: %s\n", ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "DirectSoundCreate(NULL) failed: %s\n",DXGetErrorString8(rc));
if (rc==S_OK && dso) if (rc==S_OK && dso)
IDirectSound_test(dso, TRUE, NULL); IDirectSound_test(dso, TRUE, NULL);
/* try with default playback device specified */ /* try with default playback device specified */
rc=DirectSoundCreate(&DSDEVID_DefaultPlayback,&dso,NULL); rc=DirectSoundCreate(&DSDEVID_DefaultPlayback,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER,"DirectSoundCreate(DSDEVID_DefaultPlayback)" ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
" failed: %s\n", DXGetErrorString8(rc)); "DirectSoundCreate(DSDEVID_DefaultPlayback) failed: %s\n",
DXGetErrorString8(rc));
if (rc==DS_OK && dso) if (rc==DS_OK && dso)
IDirectSound_test(dso, TRUE, NULL); IDirectSound_test(dso, TRUE, NULL);
/* try with default voice playback device specified */ /* try with default voice playback device specified */
rc=DirectSoundCreate(&DSDEVID_DefaultVoicePlayback,&dso,NULL); rc=DirectSoundCreate(&DSDEVID_DefaultVoicePlayback,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER, ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
"DirectSoundCreate(DSDEVID_DefaultVoicePlayback) failed: %s\n", "DirectSoundCreate(DSDEVID_DefaultVoicePlayback) failed: %s\n",
DXGetErrorString8(rc)); DXGetErrorString8(rc));
if (rc==DS_OK && dso) if (rc==DS_OK && dso)
......
...@@ -103,10 +103,15 @@ static void IDirectSound8_test(LPDIRECTSOUND8 dso, BOOL initialized, ...@@ -103,10 +103,15 @@ static void IDirectSound8_test(LPDIRECTSOUND8 dso, BOOL initialized,
DXGetErrorString8(rc)); DXGetErrorString8(rc));
rc=IDirectSound8_Initialize(dso,lpGuid); rc=IDirectSound8_Initialize(dso,lpGuid);
ok(rc==DS_OK||rc==DSERR_NODRIVER,"IDirectSound8_Initialize() failed: %s\n", ok(rc==DS_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "IDirectSound8_Initialize() failed: %s\n",DXGetErrorString8(rc));
if (rc==DSERR_NODRIVER) if (rc==DSERR_NODRIVER) {
trace(" No Driver\n");
return;
} else if (rc==DSERR_ALLOCATED) {
trace(" Already In Use\n");
return; return;
}
} }
/* DSOUND: Error: Invalid caps buffer */ /* DSOUND: Error: Invalid caps buffer */
...@@ -222,22 +227,22 @@ static void IDirectSound8_tests() ...@@ -222,22 +227,22 @@ static void IDirectSound8_tests()
/* try with no device specified */ /* try with no device specified */
rc=pDirectSoundCreate8(NULL,&dso,NULL); rc=pDirectSoundCreate8(NULL,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %s\n", ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "DirectSoundCreate8() failed: %s\n",DXGetErrorString8(rc));
if (rc==DS_OK && dso) if (rc==DS_OK && dso)
IDirectSound8_test(dso, TRUE, NULL); IDirectSound8_test(dso, TRUE, NULL);
/* try with default playback device specified */ /* try with default playback device specified */
rc=pDirectSoundCreate8(&DSDEVID_DefaultPlayback,&dso,NULL); rc=pDirectSoundCreate8(&DSDEVID_DefaultPlayback,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %s\n", ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "DirectSoundCreate8() failed: %s\n",DXGetErrorString8(rc));
if (rc==DS_OK && dso) if (rc==DS_OK && dso)
IDirectSound8_test(dso, TRUE, NULL); IDirectSound8_test(dso, TRUE, NULL);
/* try with default voice playback device specified */ /* try with default voice playback device specified */
rc=pDirectSoundCreate8(&DSDEVID_DefaultVoicePlayback,&dso,NULL); rc=pDirectSoundCreate8(&DSDEVID_DefaultVoicePlayback,&dso,NULL);
ok(rc==S_OK||rc==DSERR_NODRIVER,"DirectSoundCreate8() failed: %s\n", ok(rc==S_OK||rc==DSERR_NODRIVER||rc==DSERR_ALLOCATED,
DXGetErrorString8(rc)); "DirectSoundCreate8() failed: %s\n",DXGetErrorString8(rc));
if (rc==DS_OK && dso) if (rc==DS_OK && dso)
IDirectSound8_test(dso, TRUE, NULL); IDirectSound8_test(dso, TRUE, NULL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment