[PATCH 1/3] wmp: Fix a crash in put_volume when basic_audio is NULL.

Sven Baars sven.wine at gmail.com
Sat Aug 17 11:50:16 CDT 2019


Signed-off-by: Sven Baars <sven.wine at gmail.com>
---
 dlls/wmp/player.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/dlls/wmp/player.c b/dlls/wmp/player.c
index 729cc81f9c..c547dad1b3 100644
--- a/dlls/wmp/player.c
+++ b/dlls/wmp/player.c
@@ -985,18 +985,18 @@ static HRESULT WINAPI WMPSettings_get_volume(IWMPSettings *iface, LONG *p)
 
 static HRESULT WINAPI WMPSettings_put_volume(IWMPSettings *iface, LONG v)
 {
-    HRESULT hres;
     WindowsMediaPlayer *This = impl_from_IWMPSettings(iface);
     TRACE("(%p)->(%d)\n", This, v);
     This->volume = v;
-    if (!This->filter_graph) {
-        hres = S_OK;
-    } else {
-        /* IBasicAudio -   [-10000, 0], wmp - [0, 100] */
-        v = 10000 * v / 100 - 10000;
-        hres = IBasicAudio_put_Volume(This->basic_audio, v);
-    }
-    return hres;
+    if (!This->filter_graph)
+        return S_OK;
+
+    /* IBasicAudio -   [-10000, 0], wmp - [0, 100] */
+    v = 10000 * v / 100 - 10000;
+    if (!This->basic_audio)
+        return S_FALSE;
+
+    return IBasicAudio_put_Volume(This->basic_audio, v);
 }
 
 static HRESULT WINAPI WMPSettings_getMode(IWMPSettings *iface, BSTR mode, VARIANT_BOOL *p)
-- 
2.17.1




More information about the wine-devel mailing list