mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-31 10:41:12 +00:00
Cleanup messages.
This commit is contained in:
parent
e9b0ea1554
commit
b6abcb51a8
1 changed files with 115 additions and 58 deletions
|
@ -45,9 +45,11 @@ static char * format_string(WAVEFORMATEX* wfx)
|
|||
|
||||
sprintf(str, "%ldx%dx%d %s",
|
||||
wfx->nSamplesPerSec, wfx->wBitsPerSample, wfx->nChannels,
|
||||
wfx->wFormatTag == WAVE_FORMAT_PCM ? "PCM" :
|
||||
wfx->wFormatTag == WAVE_FORMAT_MULAW ? "MULAW" :
|
||||
wfx->wFormatTag == WAVE_FORMAT_IMA_ADPCM ? "IMA ADPCM" : "Unknown");
|
||||
wfx->wFormatTag == WAVE_FORMAT_PCM ? "WAVE_FORMAT_PCM" :
|
||||
wfx->wFormatTag == WAVE_FORMAT_MULAW ? "WAVE_FORMAT_MULAW" :
|
||||
wfx->wFormatTag == WAVE_FORMAT_IMA_ADPCM ? "WAVE_FORMAT_IMA_ADPCM" :
|
||||
wfx->wFormatTag == WAVE_FORMAT_EXTENSIBLE ? "WAVE_FORMAT_EXTENSIBLE" :
|
||||
"Unknown");
|
||||
|
||||
return str;
|
||||
}
|
||||
|
@ -77,18 +79,23 @@ static int capture_buffer_service(capture_state_t* state)
|
|||
DWORD len1,len2;
|
||||
DWORD capture_pos,read_pos;
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_GetCurrentPosition(state->dscbo,&capture_pos,&read_pos);
|
||||
ok(rc==DS_OK,"GetCurrentPosition failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
rc=IDirectSoundCaptureBuffer_GetCurrentPosition(state->dscbo,&capture_pos,
|
||||
&read_pos);
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCurrentPosition() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return 0;
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_Lock(state->dscbo,state->offset,state->size,&ptr1,&len1,&ptr2,&len2,0);
|
||||
ok(rc==DS_OK,"Lock failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
rc=IDirectSoundCaptureBuffer_Lock(state->dscbo,state->offset,state->size,
|
||||
&ptr1,&len1,&ptr2,&len2,0);
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Lock() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return 0;
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_Unlock(state->dscbo,ptr1,len1,ptr2,len2);
|
||||
ok(rc==DS_OK,"Unlock failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Unlock() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return 0;
|
||||
|
||||
|
@ -105,20 +112,25 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
WAVEFORMATEX wfx;
|
||||
DWORD size,status;
|
||||
capture_state_t state;
|
||||
int i;
|
||||
int i, ref;
|
||||
|
||||
/* Private dsound.dll: Error: Invalid caps pointer */
|
||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,0);
|
||||
ok(rc==DSERR_INVALIDPARAM,"GetCaps should have failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
||||
"have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
|
||||
/* Private dsound.dll: Error: Invalid caps pointer */
|
||||
dscbcaps.dwSize=0;
|
||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
||||
ok(rc==DSERR_INVALIDPARAM,"GetCaps should have failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetCaps() should "
|
||||
"have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
|
||||
dscbcaps.dwSize=sizeof(dscbcaps);
|
||||
rc=IDirectSoundCaptureBuffer_GetCaps(dscbo,&dscbcaps);
|
||||
ok(rc==DS_OK,"GetCaps failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetCaps() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
trace(" Caps: size = %ld flags=0x%08lx buffer size=%ld\n",
|
||||
dscbcaps.dwSize,dscbcaps.dwFlags,dscbcaps.dwBufferBytes);
|
||||
|
@ -127,29 +139,34 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
/* Query the format size. Note that it may not match sizeof(wfx) */
|
||||
/* Private dsound.dll: Error: Either pwfxFormat or pdwSizeWritten must be non-NULL */
|
||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,
|
||||
"GetFormat should have returned an error: rc=0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetFormat() should "
|
||||
"have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
|
||||
size=0;
|
||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,NULL,0,&size);
|
||||
ok(rc==DS_OK && size!=0,
|
||||
"GetFormat should have returned the needed size: rc=0x%lx(%s) size=%ld\n",
|
||||
rc,DXGetErrorString8(rc),size);
|
||||
ok(rc==DS_OK && size!=0,"IDirectSoundCaptureBuffer_GetFormat() should "
|
||||
"have returned the needed size: rc=%s, size=%ld\n",
|
||||
DXGetErrorString8(rc),size);
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_GetFormat(dscbo,&wfx,sizeof(wfx),NULL);
|
||||
ok(rc==DS_OK,"GetFormat failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetFormat() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
trace(" tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||
trace(" Format: tag=0x%04x %ldx%dx%d avg.B/s=%ld align=%d\n",
|
||||
wfx.wFormatTag,wfx.nSamplesPerSec,wfx.wBitsPerSample,
|
||||
wfx.nChannels,wfx.nAvgBytesPerSec,wfx.nBlockAlign);
|
||||
}
|
||||
|
||||
/* Private dsound.dll: Error: Invalid status pointer */
|
||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,0);
|
||||
ok(rc==DSERR_INVALIDPARAM,"GetStatus should have failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCaptureBuffer_GetStatus() should "
|
||||
"have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
||||
ok(rc==DS_OK,"GetStatus failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
trace(" status=0x%04lx\n",status);
|
||||
}
|
||||
|
@ -162,8 +179,11 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
state.event[i] = CreateEvent( NULL, FALSE, FALSE, NULL );
|
||||
state.size = dscbcaps.dwBufferBytes / NOTIFICATIONS;
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_QueryInterface(dscbo,&IID_IDirectSoundNotify,(void **)&(state.notify));
|
||||
ok((rc==DS_OK)&&(state.notify!=NULL),"QueryInterface failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
rc=IDirectSoundCaptureBuffer_QueryInterface(dscbo,&IID_IDirectSoundNotify,
|
||||
(void **)&(state.notify));
|
||||
ok((rc==DS_OK)&&(state.notify!=NULL),
|
||||
"IDirectSoundCaptureBuffer_QueryInterface() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return;
|
||||
|
||||
|
@ -172,24 +192,29 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
state.posnotify[i].hEventNotify = state.event[i];
|
||||
}
|
||||
|
||||
rc=IDirectSoundNotify_SetNotificationPositions(state.notify,NOTIFICATIONS,state.posnotify);
|
||||
ok(rc==DS_OK,"SetNotificationPositions failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
rc=IDirectSoundNotify_SetNotificationPositions(state.notify,NOTIFICATIONS,
|
||||
state.posnotify);
|
||||
ok(rc==DS_OK,"IDirectSoundNotify_SetNotificationPositions() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return;
|
||||
|
||||
rc=IDirectSoundNotify_Release(state.notify);
|
||||
ok(rc==0,"Release: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
if (rc!=0)
|
||||
ref=IDirectSoundNotify_Release(state.notify);
|
||||
ok(ref==0,"IDirectSoundNotify_Release(): has %d references, should have "
|
||||
"0\n",ref);
|
||||
if (ref!=0)
|
||||
return;
|
||||
|
||||
if (record) {
|
||||
rc=IDirectSoundCaptureBuffer_Start(dscbo,DSCBSTART_LOOPING);
|
||||
ok(rc==DS_OK,"Start: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Start() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return;
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_GetStatus(dscbo,&status);
|
||||
ok(rc==DS_OK,"GetStatus failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_GetStatus() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
ok(status==(DSCBSTATUS_CAPTURING|DSCBSTATUS_LOOPING),
|
||||
"GetStatus: bad status: %lx\n",status);
|
||||
if (rc!=DS_OK)
|
||||
|
@ -197,10 +222,13 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
|
||||
/* wait for the notifications */
|
||||
for (i = 0; i < (NOTIFICATIONS * 2); i++) {
|
||||
rc=MsgWaitForMultipleObjects( NOTIFICATIONS, state.event, FALSE, 3000, QS_ALLEVENTS );
|
||||
ok(rc==(WAIT_OBJECT_0+(i%NOTIFICATIONS)),"MsgWaitForMultipleObjects failed: 0x%lx\n",rc);
|
||||
rc=MsgWaitForMultipleObjects(NOTIFICATIONS,state.event,FALSE,
|
||||
3000,QS_ALLEVENTS);
|
||||
ok(rc==(WAIT_OBJECT_0+(i%NOTIFICATIONS)),
|
||||
"MsgWaitForMultipleObjects failed: 0x%lx\n",rc);
|
||||
if (rc!=(WAIT_OBJECT_0+(i%NOTIFICATIONS))) {
|
||||
ok((rc==WAIT_TIMEOUT)||(rc==WAIT_FAILED),"Wrong notification: should be %d, got %ld\n",
|
||||
ok((rc==WAIT_TIMEOUT)||(rc==WAIT_FAILED),
|
||||
"Wrong notification: should be %d, got %ld\n",
|
||||
i%NOTIFICATIONS,rc-WAIT_OBJECT_0);
|
||||
}
|
||||
if (!capture_buffer_service(&state))
|
||||
|
@ -208,7 +236,8 @@ static void test_capture_buffer(LPDIRECTSOUNDCAPTURE dsco,
|
|||
}
|
||||
|
||||
rc=IDirectSoundCaptureBuffer_Stop(dscbo);
|
||||
ok(rc==DS_OK,"Stop: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCaptureBuffer_Stop() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
return;
|
||||
}
|
||||
|
@ -229,32 +258,39 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
/* Private dsound.dll: Error: Invalid interface buffer */
|
||||
trace("Testing %s - %s\n",lpcstrDescription,lpcstrModule);
|
||||
rc=DirectSoundCaptureCreate(lpGuid,NULL,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"DirectSoundCaptureCreate didn't fail: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"DirectSoundCaptureCreate() should have "
|
||||
"returned DSERR_INVALIDPARAM, returned: %s\n",DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
ref=IDirectSoundCapture_Release(dsco);
|
||||
ok(ref==0,"IDirectSoundCapture_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCapture_Release() has %d references, should "
|
||||
"have 0\n",ref);
|
||||
}
|
||||
|
||||
rc=DirectSoundCaptureCreate(lpGuid,&dsco,NULL);
|
||||
ok((rc==DS_OK)||(rc==DSERR_NODRIVER),"DirectSoundCaptureCreate failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok((rc==DS_OK)||(rc==DSERR_NODRIVER),"DirectSoundCaptureCreate() failed: "
|
||||
"%s\n",DXGetErrorString8(rc));
|
||||
if (rc!=DS_OK)
|
||||
goto EXIT;
|
||||
|
||||
/* Private dsound.dll: Error: Invalid caps buffer */
|
||||
rc=IDirectSoundCapture_GetCaps(dsco,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"GetCaps should have failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
||||
"returned DSERR_INVALIDPARAM, returned: %s\n",DXGetErrorString8(rc));
|
||||
|
||||
/* Private dsound.dll: Error: Invalid caps buffer */
|
||||
dsccaps.dwSize=0;
|
||||
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
||||
ok(rc==DSERR_INVALIDPARAM,"GetCaps should have failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_GetCaps() should have "
|
||||
"returned DSERR_INVALIDPARAM, returned: %s\n",DXGetErrorString8(rc));
|
||||
|
||||
dsccaps.dwSize=sizeof(dsccaps);
|
||||
rc=IDirectSoundCapture_GetCaps(dsco,&dsccaps);
|
||||
ok(rc==DS_OK,"GetCaps failed: 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"IDirectSoundCapture_GetCaps() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
trace(" DirectSoundCapture Caps: size=%ld flags=0x%08lx formats=%05lx channels=%ld\n",
|
||||
dsccaps.dwSize,dsccaps.dwFlags,dsccaps.dwFormats,dsccaps.dwChannels);
|
||||
trace(" Caps: size=%ld flags=0x%08lx formats=%05lx channels=%ld\n",
|
||||
dsccaps.dwSize,dsccaps.dwFlags,dsccaps.dwFormats,
|
||||
dsccaps.dwChannels);
|
||||
}
|
||||
|
||||
/* Private dsound.dll: Error: Invalid size */
|
||||
|
@ -266,10 +302,13 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.dwReserved=0;
|
||||
bufdesc.lpwfxFormat=NULL;
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"CreateCaptureBuffer should have failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||
"should have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
|
||||
/* Private dsound.dll: Error: Invalid buffer size */
|
||||
|
@ -281,10 +320,13 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.dwReserved=0;
|
||||
bufdesc.lpwfxFormat=NULL;
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"CreateCaptureBuffer should have failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||
"should have returned DSERR_INVALIDPARAM, returned %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
|
||||
/* Private dsound.dll: Error: Invalid buffer size */
|
||||
|
@ -297,10 +339,13 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.dwReserved=0;
|
||||
bufdesc.lpwfxFormat=&wfx;
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"CreateCaptureBuffer should have failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||
"should have returned DSERR_INVALIDPARAM, returned :%s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
|
||||
/* Private dsound.dll: Error: Invalid buffer size */
|
||||
|
@ -313,15 +358,19 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.dwReserved=0;
|
||||
bufdesc.lpwfxFormat=&wfx;
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok(rc==DSERR_INVALIDPARAM,"CreateCaptureBuffer should have failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DSERR_INVALIDPARAM,"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||
"should have returned DSERR_INVALIDPARAM, returned: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
|
||||
for (f=0;f<NB_FORMATS;f++) {
|
||||
dscbo=NULL;
|
||||
init_format(&wfx,WAVE_FORMAT_PCM,formats[f][0],formats[f][1],formats[f][2]);
|
||||
init_format(&wfx,WAVE_FORMAT_PCM,formats[f][0],formats[f][1],
|
||||
formats[f][2]);
|
||||
ZeroMemory(&bufdesc, sizeof(bufdesc));
|
||||
bufdesc.dwSize=sizeof(bufdesc);
|
||||
bufdesc.dwFlags=0;
|
||||
|
@ -330,11 +379,14 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.lpwfxFormat=&wfx;
|
||||
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok((rc==DS_OK)&&(dscbo!=NULL),"CreateCaptureBuffer failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok((rc==DS_OK)&&(dscbo!=NULL),
|
||||
"IDirectSoundCapture_CreateCaptureBuffer() failed to create a "
|
||||
"capture buffer: %s\n",DXGetErrorString8(rc));
|
||||
if (rc==DS_OK) {
|
||||
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -349,11 +401,13 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.lpwfxFormat=&wfx;
|
||||
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok((rc==DS_OK)&&(dscbo!=NULL),"CreateCaptureBuffer failed to create a capture buffer 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok((rc==DS_OK)&&(dscbo!=NULL),"IDirectSoundCapture_CreateCaptureBuffer() "
|
||||
"failed to create a capture buffer: %s\n",DXGetErrorString8(rc));
|
||||
if ((rc==DS_OK)&&(dscbo!=NULL)) {
|
||||
test_capture_buffer(dsco, dscbo, winetest_interactive);
|
||||
ref=IDirectSoundCaptureBuffer_Release(dscbo);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCaptureBuffer_Release() has %d references, "
|
||||
"should have 0\n",ref);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -368,13 +422,15 @@ static BOOL WINAPI dscenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,
|
|||
bufdesc.lpwfxFormat=&wfx;
|
||||
trace(" Testing the capture buffer at %s\n", format_string(&wfx));
|
||||
rc=IDirectSoundCapture_CreateCaptureBuffer(dsco,&bufdesc,&dscbo,NULL);
|
||||
ok(rc!=DS_OK,"CreateCaptureBuffer should have failed at 2 MHz 0x%lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc!=DS_OK,"IDirectSoundCapture_CreateCaptureBuffer() should have failed "
|
||||
"at 2 MHz %s\n",DXGetErrorString8(rc));
|
||||
#endif
|
||||
|
||||
EXIT:
|
||||
if (dsco!=NULL) {
|
||||
ref=IDirectSoundCapture_Release(dsco);
|
||||
ok(ref==0,"IDirectSoundCapture_Release has %d references, should have 0\n",ref);
|
||||
ok(ref==0,"IDirectSoundCapture_Release() has %d references, should "
|
||||
"have 0\n",ref);
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
|
@ -384,7 +440,8 @@ static void capture_tests()
|
|||
{
|
||||
HRESULT rc;
|
||||
rc=DirectSoundCaptureEnumerateA(&dscenum_callback,NULL);
|
||||
ok(rc==DS_OK,"DirectSoundCaptureEnumerate failed: 0x%08lx(%s)\n",rc,DXGetErrorString8(rc));
|
||||
ok(rc==DS_OK,"DirectSoundCaptureEnumerateA() failed: %s\n",
|
||||
DXGetErrorString8(rc));
|
||||
}
|
||||
|
||||
START_TEST(capture)
|
||||
|
|
Loading…
Reference in a new issue