=?UTF-8?Q?J=C3=B6rg=20H=C3=B6hle=20?=: winmm: Prefer using MMSYSERR_* over AUDCLNT_E_* from mmdevapi.

Alexandre Julliard julliard at winehq.org
Fri Nov 9 11:03:23 CST 2012


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

Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date:   Tue Jan 10 18:47:17 2012 +0100

winmm: Prefer using MMSYSERR_* over AUDCLNT_E_* from mmdevapi.

---

 dlls/winmm/waveform.c |   37 ++++++++++++-------------------------
 1 files changed, 12 insertions(+), 25 deletions(-)

diff --git a/dlls/winmm/waveform.c b/dlls/winmm/waveform.c
index 9bcabe2..37d1d4f 100644
--- a/dlls/winmm/waveform.c
+++ b/dlls/winmm/waveform.c
@@ -1702,7 +1702,7 @@ exit:
     }
 }
 
-static HRESULT WINMM_BeginPlaying(WINMM_Device *device)
+static MMRESULT WINMM_BeginPlaying(WINMM_Device *device)
 {
     HRESULT hr;
 
@@ -1719,11 +1719,11 @@ static HRESULT WINMM_BeginPlaying(WINMM_Device *device)
         if(FAILED(hr) && hr != AUDCLNT_E_NOT_STOPPED){
             device->stopped = TRUE;
             WARN("Start failed: %08x\n", hr);
-            return hr;
+            return MMSYSERR_ERROR;
         }
     }
 
-    return S_OK;
+    return MMSYSERR_NOERROR;
 }
 
 static LRESULT WINMM_Pause(HWAVE hwave)
@@ -2577,7 +2577,7 @@ UINT WINAPI waveOutUnprepareHeader(HWAVEOUT hWaveOut,
 UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, WAVEHDR *header, UINT uSize)
 {
     WINMM_Device *device;
-    HRESULT hr;
+    MMRESULT mr;
 
     TRACE("(%p, %p, %u)\n", hWaveOut, header, uSize);
 
@@ -2598,7 +2598,6 @@ UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, WAVEHDR *header, UINT uSize)
 
     if(device->acm_handle){
         ACMSTREAMHEADER *ash = (ACMSTREAMHEADER*)header->reserved;
-        MMRESULT mr;
 
         ash->cbSrcLength = header->dwBufferLength;
         mr = acmStreamConvert(device->acm_handle, ash, 0);
@@ -2625,15 +2624,11 @@ UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, WAVEHDR *header, UINT uSize)
     header->dwFlags &= ~WHDR_DONE;
     header->dwFlags |= WHDR_INQUEUE;
 
-    hr = WINMM_BeginPlaying(device);
-    if(FAILED(hr)){
-        LeaveCriticalSection(&device->lock);
-        return MMSYSERR_ERROR;
-    }
+    mr = WINMM_BeginPlaying(device);
 
     LeaveCriticalSection(&device->lock);
 
-    return MMSYSERR_NOERROR;
+    return mr;
 }
 
 /**************************************************************************
@@ -2683,7 +2678,7 @@ UINT WINAPI waveOutReset(HWAVEOUT hWaveOut)
 UINT WINAPI waveOutRestart(HWAVEOUT hWaveOut)
 {
     WINMM_Device *device;
-    HRESULT hr;
+    MMRESULT mr;
 
     TRACE("(%p)\n", hWaveOut);
 
@@ -2694,15 +2689,11 @@ UINT WINAPI waveOutRestart(HWAVEOUT hWaveOut)
 
     device->stopped = TRUE;
 
-    hr = WINMM_BeginPlaying(device);
-    if(FAILED(hr)){
-        LeaveCriticalSection(&device->lock);
-        return MMSYSERR_ERROR;
-    }
+    mr = WINMM_BeginPlaying(device);
 
     LeaveCriticalSection(&device->lock);
 
-    return MMSYSERR_NOERROR;
+    return mr;
 }
 
 /**************************************************************************
@@ -3255,7 +3246,7 @@ UINT WINAPI waveInReset(HWAVEIN hWaveIn)
 UINT WINAPI waveInStart(HWAVEIN hWaveIn)
 {
     WINMM_Device *device;
-    HRESULT hr;
+    MMRESULT mr;
 
     TRACE("(%p)\n", hWaveIn);
 
@@ -3264,15 +3255,11 @@ UINT WINAPI waveInStart(HWAVEIN hWaveIn)
     if(!WINMM_ValidateAndLock(device))
         return MMSYSERR_INVALHANDLE;
 
-    hr = WINMM_BeginPlaying(device);
-    if(FAILED(hr)){
-        LeaveCriticalSection(&device->lock);
-        return MMSYSERR_ERROR;
-    }
+    mr = WINMM_BeginPlaying(device);
 
     LeaveCriticalSection(&device->lock);
 
-    return MMSYSERR_NOERROR;
+    return mr;
 }
 
 /**************************************************************************




More information about the wine-cvs mailing list