Module: wine Branch: master Commit: 7fb0861bf6a84655f4ba59d01fd231ee3fc56fb9 URL: http://source.winehq.org/git/wine.git/?a=commit;h=7fb0861bf6a84655f4ba59d01f...
Author: Emmanuel Maillard mahanuu@free.fr Date: Sun May 13 21:56:42 2007 +0200
winecoreaudio: Implement MIX_GetDevCaps.
---
dlls/winecoreaudio.drv/mixer.c | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/dlls/winecoreaudio.drv/mixer.c b/dlls/winecoreaudio.drv/mixer.c index 78ce6e2..7cecda2 100644 --- a/dlls/winecoreaudio.drv/mixer.c +++ b/dlls/winecoreaudio.drv/mixer.c @@ -478,6 +478,23 @@ static DWORD MIX_GetNumDevs(void) return numMixers; }
+static DWORD MIX_GetDevCaps(WORD wDevID, LPMIXERCAPSW lpCaps, DWORD_PTR dwSize) +{ + TRACE("wDevID=%d lpCaps=%p\n", wDevID, lpCaps); + + if (lpCaps == NULL) { + WARN("Invalid Parameter\n"); + return MMSYSERR_INVALPARAM; + } + + if (wDevID >= numMixers) { + WARN("bad device ID : %d\n", wDevID); + return MMSYSERR_BADDEVICEID; + } + memcpy(lpCaps, &mixer.caps, min(dwSize, sizeof(*lpCaps))); + return MMSYSERR_NOERROR; +} + /************************************************************************** * mxdMessage */ @@ -502,6 +519,7 @@ DWORD WINAPI CoreAudio_mxdMessage(UINT wDevID, UINT wMsg, DWORD_PTR dwUser, case MXDM_GETNUMDEVS: return MIX_GetNumDevs(); case MXDM_GETDEVCAPS: + return MIX_GetDevCaps(wDevID, (LPMIXERCAPSW)dwParam1, dwParam2); case MXDM_GETLINEINFO: case MXDM_GETLINECONTROLS: case MXDM_GETCONTROLDETAILS: