Module: wine Branch: stable Commit: 7d02fd778133370e6a1b1f8a225d0f62219c6ff4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=7d02fd778133370e6a1b1f8a22...
Author: Andrew Eikum aeikum@codeweavers.com Date: Fri Feb 19 10:48:52 2016 -0600
mciqtz: Implement MCI_RESUME.
Signed-off-by: Andrew Eikum aeikum@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org (cherry picked from commit 924c97fe9070c62652c0b19d71469a07a6dd7a60) Signed-off-by: Michael Stefaniuc mstefani@winehq.org
---
dlls/mciqtz32/mciqtz.c | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/dlls/mciqtz32/mciqtz.c b/dlls/mciqtz32/mciqtz.c index d018a54..567792e 100644 --- a/dlls/mciqtz32/mciqtz.c +++ b/dlls/mciqtz32/mciqtz.c @@ -583,6 +583,29 @@ static DWORD MCIQTZ_mciPause(UINT wDevID, DWORD dwFlags, LPMCI_GENERIC_PARMS lpP }
/*************************************************************************** + * MCIQTZ_mciResume [internal] + */ +static DWORD MCIQTZ_mciResume(UINT wDevID, DWORD dwFlags, LPMCI_GENERIC_PARMS lpParms) +{ + WINE_MCIQTZ* wma; + HRESULT hr; + + TRACE("(%04x, %08X, %p)\n", wDevID, dwFlags, lpParms); + + wma = MCIQTZ_mciGetOpenDev(wDevID); + if (!wma) + return MCIERR_INVALID_DEVICE_ID; + + hr = IMediaControl_Run(wma->pmctrl); + if (FAILED(hr)) { + TRACE("Cannot run filtergraph (hr = %x)\n", hr); + return MCIERR_INTERNAL; + } + + return 0; +} + +/*************************************************************************** * MCIQTZ_mciGetDevCaps [internal] */ static DWORD MCIQTZ_mciGetDevCaps(UINT wDevID, DWORD dwFlags, LPMCI_GETDEVCAPS_PARMS lpParms) @@ -1078,6 +1101,9 @@ static DWORD CALLBACK MCIQTZ_taskThread(LPVOID arg) case MCI_PAUSE: task->res = MCIQTZ_mciPause(task->devid, task->flags, (LPMCI_GENERIC_PARMS)task->parms); break; + case MCI_RESUME: + task->res = MCIQTZ_mciResume(task->devid, task->flags, (LPMCI_GENERIC_PARMS)task->parms); + break; case MCI_GETDEVCAPS: task->res = MCIQTZ_mciGetDevCaps(task->devid, task->flags, (LPMCI_GETDEVCAPS_PARMS)task->parms); break; @@ -1158,6 +1184,7 @@ LRESULT CALLBACK MCIQTZ_DriverProc(DWORD_PTR dwDevID, HDRVR hDriv, UINT wMsg, case MCI_CLOSE_DRIVER: case MCI_STOP: case MCI_PAUSE: + case MCI_RESUME: return MCIQTZ_relayTaskMessage(dwDevID, wMsg, dwParam1, dwParam2); /* Digital Video specific */ case MCI_SETAUDIO: @@ -1167,7 +1194,6 @@ LRESULT CALLBACK MCIQTZ_DriverProc(DWORD_PTR dwDevID, HDRVR hDriv, UINT wMsg, return MCIQTZ_relayTaskMessage(dwDevID, wMsg, dwParam1, dwParam2); case MCI_PUT: case MCI_RECORD: - case MCI_RESUME: case MCI_INFO: case MCI_LOAD: case MCI_SAVE: