Module: wine Branch: master Commit: 8aeb9ec03ae1ecb2d1700200858ff7bec9e1e8f5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=8aeb9ec03ae1ecb2d170020085...
Author: Jörg Höhle hoehle@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: