Author: cwittich
Date: Fri Mar 5 19:44:59 2010
New Revision: 45883
URL:
http://svn.reactos.org/svn/reactos?rev=45883&view=rev
Log:
[DSOUND_WINETEST]
sync dsound_winetest to wine 1.1.39
Modified:
trunk/rostests/winetests/dsound/ds3d.c
trunk/rostests/winetests/dsound/dsound.c
trunk/rostests/winetests/dsound/dsound8.c
trunk/rostests/winetests/dsound/propset.c
Modified: trunk/rostests/winetests/dsound/ds3d.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/dsound/ds3d.c?r…
==============================================================================
--- trunk/rostests/winetests/dsound/ds3d.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/dsound/ds3d.c [iso-8859-1] Fri Mar 5 19:44:59 2010
@@ -1158,13 +1158,12 @@
"to create a 3D primary buffer: %08x\n",rc);
if (rc==DS_OK && primary!=NULL) {
LPDIRECTSOUND3DLISTENER listener=NULL;
+ LPDIRECTSOUNDBUFFER temp_buffer=NULL;
rc=IDirectSoundBuffer_QueryInterface(primary,
&IID_IDirectSound3DListener,(void **)&listener);
ok(rc==DS_OK && listener!=NULL,"IDirectSoundBuffer_QueryInterface()
"
"failed to get a 3D listener: %08x\n",rc);
if (rc==DS_OK && listener!=NULL) {
- LPDIRECTSOUNDBUFFER temp_buffer=NULL;
-
/* Checking the COM interface */
rc=IDirectSoundBuffer_QueryInterface(primary,
&IID_IDirectSoundBuffer,(LPVOID *)&temp_buffer);
@@ -1195,12 +1194,32 @@
winetest_interactive &&
!(dscaps.dwFlags & DSCAPS_EMULDRIVER),1.0,0,
listener,0,0,FALSE,0);
+
+ todo_wine {
+ temp_buffer = NULL;
+ rc=IDirectSound3DListener_QueryInterface(listener,
+ &IID_IKsPropertySet,(LPVOID *)&temp_buffer);
+ ok(rc==DS_OK && temp_buffer!=NULL,
+ "IDirectSound3DListener_QueryInterface didn't handle
IKsPropertySet: ret = %08x\n", rc);
+ if(temp_buffer)
+ IKsPropertySet_Release(temp_buffer);
+ }
}
/* Testing the reference counting */
ref=IDirectSound3DListener_Release(listener);
ok(ref==0,"IDirectSound3DListener_Release() listener has %d "
"references, should have 0\n",ref);
+ }
+
+ todo_wine {
+ temp_buffer = NULL;
+ rc=IDirectSoundBuffer_QueryInterface(primary,
+ &IID_IKsPropertySet,(LPVOID *)&temp_buffer);
+ ok(rc==DS_OK && temp_buffer!=NULL,
+ "IDirectSoundBuffer_QueryInterface didn't handle IKsPropertySet on
primary buffer: ret = %08x\n", rc);
+ if(temp_buffer)
+ IKsPropertySet_Release(temp_buffer);
}
/* Testing the reference counting */
Modified: trunk/rostests/winetests/dsound/dsound.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/dsound/dsound.c…
==============================================================================
--- trunk/rostests/winetests/dsound/dsound.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/dsound/dsound.c [iso-8859-1] Fri Mar 5 19:44:59 2010
@@ -55,7 +55,7 @@
IUnknown * unknown;
IDirectSound * ds;
IDirectSound8 * ds8;
- DWORD speaker_config, new_speaker_config;
+ DWORD speaker_config, new_speaker_config, ref_speaker_config;
/* Try to Query for objects */
rc=IDirectSound_QueryInterface(dso,&IID_IUnknown,(LPVOID*)&unknown);
@@ -144,11 +144,17 @@
rc=IDirectSound_GetSpeakerConfig(dso,&speaker_config);
ok(rc==DS_OK,"IDirectSound_GetSpeakerConfig() failed: %08x\n", rc);
+ ref_speaker_config = speaker_config;
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_WIDE);
- rc=IDirectSound_SetSpeakerConfig(dso,speaker_config);
- ok(rc==DS_OK,"IDirectSound_SetSpeakerConfig() failed: %08x\n", rc);
+ if (speaker_config == ref_speaker_config)
+ speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
+ DSSPEAKER_GEOMETRY_NARROW);
+ if(rc==DS_OK) {
+ rc=IDirectSound_SetSpeakerConfig(dso,speaker_config);
+ ok(rc==DS_OK,"IDirectSound_SetSpeakerConfig() failed: %08x\n", rc);
+ }
if (rc==DS_OK) {
rc=IDirectSound_GetSpeakerConfig(dso,&new_speaker_config);
ok(rc==DS_OK,"IDirectSound_GetSpeakerConfig() failed: %08x\n", rc);
@@ -156,6 +162,7 @@
trace("IDirectSound_GetSpeakerConfig() failed to set speaker "
"config: expected 0x%08x, got 0x%08x\n",
speaker_config,new_speaker_config);
+ IDirectSound_SetSpeakerConfig(dso,ref_speaker_config);
}
EXIT:
Modified: trunk/rostests/winetests/dsound/dsound8.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/dsound/dsound8.…
==============================================================================
--- trunk/rostests/winetests/dsound/dsound8.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/dsound/dsound8.c [iso-8859-1] Fri Mar 5 19:44:59 2010
@@ -54,7 +54,7 @@
IUnknown * unknown;
IDirectSound * ds;
IDirectSound8 * ds8;
- DWORD speaker_config, new_speaker_config;
+ DWORD speaker_config, new_speaker_config, ref_speaker_config;
DWORD certified;
/* Try to Query for objects */
@@ -148,11 +148,17 @@
rc=IDirectSound8_GetSpeakerConfig(dso,&speaker_config);
ok(rc==DS_OK,"IDirectSound8_GetSpeakerConfig() failed: %08x\n", rc);
+ ref_speaker_config = speaker_config;
speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
DSSPEAKER_GEOMETRY_WIDE);
- rc=IDirectSound8_SetSpeakerConfig(dso,speaker_config);
- ok(rc==DS_OK,"IDirectSound8_SetSpeakerConfig() failed: %08x\n", rc);
+ if (speaker_config == ref_speaker_config)
+ speaker_config = DSSPEAKER_COMBINED(DSSPEAKER_STEREO,
+ DSSPEAKER_GEOMETRY_NARROW);
+ if(rc==DS_OK) {
+ rc=IDirectSound8_SetSpeakerConfig(dso,speaker_config);
+ ok(rc==DS_OK,"IDirectSound8_SetSpeakerConfig() failed: %08x\n", rc);
+ }
if (rc==DS_OK) {
rc=IDirectSound8_GetSpeakerConfig(dso,&new_speaker_config);
ok(rc==DS_OK,"IDirectSound8_GetSpeakerConfig() failed: %08x\n", rc);
@@ -160,6 +166,7 @@
trace("IDirectSound8_GetSpeakerConfig() failed to set speaker "
"config: expected 0x%08x, got 0x%08x\n",
speaker_config,new_speaker_config);
+ IDirectSound8_SetSpeakerConfig(dso,ref_speaker_config);
}
rc=IDirectSound8_VerifyCertification(dso, &certified);
Modified: trunk/rostests/winetests/dsound/propset.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/dsound/propset.…
==============================================================================
--- trunk/rostests/winetests/dsound/propset.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/dsound/propset.c [iso-8859-1] Fri Mar 5 19:44:59 2010
@@ -550,6 +550,7 @@
NULL, 0, &data, sizeof(data), &bytes);
ok(rc==DS_OK, "Couldn't enumerate: 0x%x\n",rc);
}
+ IKsPropertySet_Release(pps);
}
static BOOL WINAPI dsenum_callback(LPGUID lpGuid, LPCSTR lpcstrDescription,