Author: akhaldi Date: Thu Mar 3 13:38:34 2016 New Revision: 70876
URL: http://svn.reactos.org/svn/reactos?rev=70876&view=rev Log: [MCIQTZ32] Sync with Wine Staging 1.9.4. CORE-10912
Modified: trunk/reactos/dll/win32/mciqtz32/mciqtz.c trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/dll/win32/mciqtz32/mciqtz.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/mciqtz32/mciqtz.c... ============================================================================== --- trunk/reactos/dll/win32/mciqtz32/mciqtz.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/mciqtz32/mciqtz.c [iso-8859-1] Thu Mar 3 13:38:34 2016 @@ -165,6 +165,7 @@ CloseHandle(wma->task.notify); CloseHandle(wma->task.done); CloseHandle(wma->task.thread); + wma->cs.DebugInfo->Spare[0] = 0; DeleteCriticalSection(&wma->cs); mciSetDriverData(dwDevID, 0); CloseHandle(wma->stop_event); @@ -939,6 +940,53 @@ return 0; }
+/*************************************************************************** + * MCIQTZ_mciPut [internal] + */ +static DWORD MCIQTZ_mciPut(UINT wDevID, DWORD dwFlags, MCI_GENERIC_PARMS *lpParms) +{ + WINE_MCIQTZ *wma = MCIQTZ_mciGetOpenDev(wDevID); + MCI_DGV_RECT_PARMS *rectparms; + HRESULT hr; + + TRACE("(%04x, %08X, %p)\n", wDevID, dwFlags, lpParms); + + if (!wma) + return MCIERR_INVALID_DEVICE_ID; + + if (!(dwFlags & MCI_DGV_RECT)) { + FIXME("No support for non-RECT MCI_PUT\n"); + return 1; + } + + if (dwFlags & MCI_TEST) + return 0; + + dwFlags &= ~MCI_DGV_RECT; + rectparms = (MCI_DGV_RECT_PARMS*)lpParms; + + if (dwFlags & MCI_DGV_PUT_DESTINATION) { + hr = IVideoWindow_SetWindowPosition(wma->vidwin, + rectparms->rc.left, rectparms->rc.top, + rectparms->rc.right - rectparms->rc.left, + rectparms->rc.bottom - rectparms->rc.top); + if(FAILED(hr)) + WARN("IVideoWindow_SetWindowPosition failed: 0x%x\n", hr); + + dwFlags &= ~MCI_DGV_PUT_DESTINATION; + } + + if (dwFlags & MCI_NOTIFY) { + MCIQTZ_mciNotify(lpParms->dwCallback, wma, MCI_NOTIFY_SUCCESSFUL); + dwFlags &= ~MCI_NOTIFY; + } + + if (dwFlags) + FIXME("No support for some flags: 0x%x\n", dwFlags); + + return 0; +} + /****************************************************************************** * MCIAVI_mciUpdate [internal] */ @@ -1102,6 +1150,9 @@ case MCI_WINDOW: task->res = MCIQTZ_mciWindow(task->devid, task->flags, (LPMCI_DGV_WINDOW_PARMSW)task->parms); break; + case MCI_PUT: + task->res = MCIQTZ_mciPut(task->devid, task->flags, (MCI_GENERIC_PARMS*)task->parms); + break; case MCI_CLOSE: /* Special internal message */ SetEvent(task->done); @@ -1166,9 +1217,9 @@ case MCI_SETAUDIO: case MCI_UPDATE: case MCI_WINDOW: + case MCI_PUT: if (!dwParam2) return MCIERR_NULL_PARAMETER_BLOCK; return MCIQTZ_relayTaskMessage(dwDevID, wMsg, dwParam1, dwParam2); - case MCI_PUT: case MCI_RECORD: case MCI_RESUME: case MCI_INFO:
Modified: trunk/reactos/media/doc/README.WINE URL: http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=7... ============================================================================== --- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original) +++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Thu Mar 3 13:38:34 2016 @@ -94,7 +94,7 @@ reactos/dll/win32/mapi32 # Synced to WineStaging-1.9.4 reactos/dll/win32/mciavi32 # Synced to WineStaging-1.7.55 reactos/dll/win32/mcicda # Synced to WineStaging-1.7.55 -reactos/dll/win32/mciqtz32 # Synced to WineStaging-1.7.55 +reactos/dll/win32/mciqtz32 # Synced to WineStaging-1.9.4 reactos/dll/win32/mciseq # Synced to WineStaging-1.7.55 reactos/dll/win32/mciwave # Synced to WineStaging-1.7.55 reactos/dll/win32/mgmtapi # Synced to WineStaging-1.7.55