Andrew Eikum : mciqtz: Implement MCI_RESUME.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Apr 12 06:45:25 CDT 2016


Module: wine
Branch: stable
Commit: 7d02fd778133370e6a1b1f8a225d0f62219c6ff4
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7d02fd778133370e6a1b1f8a225d0f62219c6ff4

Author: Andrew Eikum <aeikum at codeweavers.com>
Date:   Fri Feb 19 10:48:52 2016 -0600

mciqtz: Implement MCI_RESUME.

Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 924c97fe9070c62652c0b19d71469a07a6dd7a60)
Signed-off-by: Michael Stefaniuc <mstefani at 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:




More information about the wine-cvs mailing list