Andrew Eikum : dmime: Don' t try to create a standard audio path if the client didn't ask for one.

Alexandre Julliard julliard at winehq.org
Thu Apr 19 13:27:51 CDT 2012


Module: wine
Branch: master
Commit: 629e857c2ee0e8816a11ee4ab446c13798362f33
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=629e857c2ee0e8816a11ee4ab446c13798362f33

Author: Andrew Eikum <aeikum at codeweavers.com>
Date:   Wed Apr 18 10:14:01 2012 -0500

dmime: Don't try to create a standard audio path if the client didn't ask for one.

---

 dlls/dmime/performance.c       |    5 +++--
 dlls/dmime/tests/performance.c |   14 ++++++++++++++
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/dlls/dmime/performance.c b/dlls/dmime/performance.c
index bc44fa5..0f76e36 100644
--- a/dlls/dmime/performance.c
+++ b/dlls/dmime/performance.c
@@ -945,7 +945,8 @@ static HRESULT WINAPI IDirectMusicPerformance8Impl_InitAudio(IDirectMusicPerform
 	  This->pParams.dwFeatures = dwFlags;
 	  This->pParams.clsidDefaultSynth = CLSID_DirectMusicSynthSink;
 	}
-	hr = IDirectMusicPerformance8_CreateStandardAudioPath(iface, dwDefaultPathType, dwPChannelCount, FALSE, &This->pDefaultPath);
+	if(dwDefaultPathType != 0)
+		hr = IDirectMusicPerformance8_CreateStandardAudioPath(iface, dwDefaultPathType, dwPChannelCount, FALSE, &This->pDefaultPath);
 
 	PostMessageToProcessMsgThread(This, PROCESSMSG_START);
 
@@ -1096,7 +1097,7 @@ static HRESULT WINAPI IDirectMusicPerformance8Impl_CreateStandardAudioPath(IDire
 
 	*ppNewPath = pPath;
 	
-	TRACE(" returning IDirectMusicPerformance interface at %p.\n", *ppNewPath);
+	TRACE(" returning IDirectMusicAudioPath interface at %p.\n", *ppNewPath);
 
 	return IDirectMusicAudioPath_Activate(*ppNewPath, fActivate);
 }
diff --git a/dlls/dmime/tests/performance.c b/dlls/dmime/tests/performance.c
index 684642b..d0d5079 100644
--- a/dlls/dmime/tests/performance.c
+++ b/dlls/dmime/tests/performance.c
@@ -82,6 +82,20 @@ static HRESULT test_InitAudio(void)
 
     IDirectMusicPerformance8_Release(idmusicperformance);
 
+    hr = CoCreateInstance(&CLSID_DirectMusicPerformance, NULL,
+            CLSCTX_INPROC_SERVER, &IID_IDirectMusicPerformance8,
+            (void**)&idmusicperformance);
+    ok(hr == S_OK, "CoCreateInstance failed: %08x\n", hr);
+
+    hr = IDirectMusicPerformance8_InitAudio(idmusicperformance, NULL, NULL,
+            NULL, 0, 64, 0, NULL);
+    ok(hr == S_OK, "InitAudio failed: %08x\n", hr);
+
+    hr = IDirectMusicPerformance8_CloseDown(idmusicperformance);
+    ok(hr == S_OK, "CloseDown failed: %08x\n", hr);
+
+    IDirectMusicPerformance8_Release(idmusicperformance);
+
     return S_OK;
 }
 




More information about the wine-cvs mailing list