Jörg Höhle : wineoss: Supply FFFFFFFF for midiOutGetVolume, not garbage.

Alexandre Julliard julliard at winehq.org
Wed May 5 11:08:35 CDT 2010


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

Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date:   Sat Jan 30 22:55:43 2010 +0100

wineoss: Supply FFFFFFFF for midiOutGetVolume, not garbage.

---

 dlls/wineoss.drv/midi.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/dlls/wineoss.drv/midi.c b/dlls/wineoss.drv/midi.c
index 61d0383..20163b1 100644
--- a/dlls/wineoss.drv/midi.c
+++ b/dlls/wineoss.drv/midi.c
@@ -1632,6 +1632,17 @@ static DWORD modUnprepare(WORD wDevID, LPMIDIHDR lpMidiHdr, DWORD dwSize)
 }
 
 /**************************************************************************
+ * 			modGetVolume				[internal]
+ */
+static DWORD modGetVolume(WORD wDevID, DWORD* lpdwVolume)
+{
+    if (!lpdwVolume) return MMSYSERR_INVALPARAM;
+    if (wDevID >= MODM_NumDevs) return MMSYSERR_BADDEVICEID;
+    *lpdwVolume = 0xFFFFFFFF;
+    return (MidiOutDev[wDevID].caps.dwSupport & MIDICAPS_VOLUME) ? 0 : MMSYSERR_NOTSUPPORTED;
+}
+
+/**************************************************************************
  * 			modReset				[internal]
  */
 static DWORD modReset(WORD wDevID)
@@ -1748,7 +1759,7 @@ DWORD WINAPI OSS_modMessage(UINT wDevID, UINT wMsg, DWORD_PTR dwUser,
     case MODM_GETNUMDEVS:
 	return MODM_NumDevs;
     case MODM_GETVOLUME:
-	return 0;
+	return modGetVolume(wDevID, (DWORD*)dwParam1);
     case MODM_SETVOLUME:
 	return 0;
     case MODM_RESET:




More information about the wine-cvs mailing list