Aric Stewart : coreaudio: Verify valid lineId in MIXER_GETLINECONTROLSF_ONEBYTYPE.
Alexandre Julliard
julliard at winehq.org
Thu Nov 29 10:31:27 CST 2007
Module: wine
Branch: master
Commit: b314f1321939eee9187f092d13bb089e5b7d787a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b314f1321939eee9187f092d13bb089e5b7d787a
Author: Aric Stewart <aric at codeweavers.com>
Date: Thu Nov 29 13:42:39 2007 +0900
coreaudio: Verify valid lineId in MIXER_GETLINECONTROLSF_ONEBYTYPE.
---
dlls/winecoreaudio.drv/mixer.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/dlls/winecoreaudio.drv/mixer.c b/dlls/winecoreaudio.drv/mixer.c
index 25f3d55..66db8cb 100644
--- a/dlls/winecoreaudio.drv/mixer.c
+++ b/dlls/winecoreaudio.drv/mixer.c
@@ -760,6 +760,11 @@ static DWORD MIX_GetLineControls(WORD wDevID, LPMIXERLINECONTROLSW lpMlc, DWORD_
break;
case MIXER_GETLINECONTROLSF_ONEBYTYPE:
TRACE("dwLineID=%d MIXER_GETLINECONTROLSF_ONEBYTYPE (%s)\n", lpMlc->dwLineID, getControlType(lpMlc->u.dwControlType));
+ if ( (lpMlc->dwLineID < 0) || (lpMlc->dwLineID >= mixer.caps.cDestinations) )
+ {
+ ret = MIXERR_INVALLINE;
+ break;
+ }
if (lpMlc->u.dwControlType == MIXERCONTROL_CONTROLTYPE_VOLUME)
{
ctrl = (lpMlc->dwLineID * ControlsPerLine) + IDControlVolume;
More information about the wine-cvs
mailing list