=?UTF-8?Q?J=C3=B6rg=20H=C3=B6hle=20?=: mmdevapi/tests: Prevent crash when device is in use.

Alexandre Julliard julliard at winehq.org
Mon Nov 14 13:34:00 CST 2011


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

Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date:   Tue Nov  8 19:40:59 2011 +0100

mmdevapi/tests: Prevent crash when device is in use.

---

 dlls/mmdevapi/tests/capture.c |    8 ++++++++
 dlls/mmdevapi/tests/render.c  |    4 ++++
 2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/dlls/mmdevapi/tests/capture.c b/dlls/mmdevapi/tests/capture.c
index ed88020..eed56dd 100644
--- a/dlls/mmdevapi/tests/capture.c
+++ b/dlls/mmdevapi/tests/capture.c
@@ -330,6 +330,8 @@ static void test_streamvolume(void)
     hr = IAudioClient_Initialize(ac, AUDCLNT_SHAREMODE_SHARED, 0, 5000000,
             0, fmt, NULL);
     ok(hr == S_OK, "Initialize failed: %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = IAudioClient_GetService(ac, &IID_IAudioStreamVolume, (void**)&asv);
     ok(hr == S_OK, "GetService failed: %08x\n", hr);
@@ -430,6 +432,8 @@ static void test_channelvolume(void)
 
     hr = IAudioClient_GetService(ac, &IID_IChannelAudioVolume, (void**)&acv);
     ok(hr == S_OK, "GetService failed: %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = IChannelAudioVolume_GetChannelCount(acv, NULL);
     ok(hr == NULL_PTR_ERR, "GetChannelCount gave wrong error: %08x\n", hr);
@@ -530,6 +534,8 @@ static void test_simplevolume(void)
 
     hr = IAudioClient_GetService(ac, &IID_ISimpleAudioVolume, (void**)&sav);
     ok(hr == S_OK, "GetService failed: %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = ISimpleAudioVolume_GetMasterVolume(sav, NULL);
     ok(hr == NULL_PTR_ERR, "GetMasterVolume gave wrong error: %08x\n", hr);
@@ -621,6 +627,8 @@ static void test_volume_dependence(void)
 
     hr = IAudioClient_GetService(ac, &IID_IAudioStreamVolume, (void**)&asv);
     ok(hr == S_OK, "GetService (AudioStreamVolume) failed: %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = IAudioStreamVolume_SetChannelVolume(asv, 0, 0.2f);
     ok(hr == S_OK, "ASV_SetChannelVolume failed: %08x\n", hr);
diff --git a/dlls/mmdevapi/tests/render.c b/dlls/mmdevapi/tests/render.c
index d55f2ae..7108815 100644
--- a/dlls/mmdevapi/tests/render.c
+++ b/dlls/mmdevapi/tests/render.c
@@ -530,6 +530,8 @@ static void test_padding(void)
     hr = IAudioClient_Initialize(ac, AUDCLNT_SHAREMODE_SHARED,
             0, 5000000, 0, pwfx, NULL);
     ok(hr == S_OK, "Initialize failed: %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = IAudioClient_GetDevicePeriod(ac, &defp, &minp);
     ok(hr == S_OK, "GetDevicePeriod failed: %08x\n", hr);
@@ -1396,6 +1398,8 @@ static void test_session_creation(void)
             NULL, (void**)&ac);
     ok((hr == S_OK)^(ac == NULL), "Activate %08x &out pointer\n", hr);
     ok(hr == S_OK, "Activation failed with %08x\n", hr);
+    if(hr != S_OK)
+        return;
 
     hr = IAudioClient_GetMixFormat(ac, &fmt);
     ok(hr == S_OK, "GetMixFormat failed: %08x\n", hr);




More information about the wine-cvs mailing list