diff --git a/dlls/mciqtz32/mciqtz.c b/dlls/mciqtz32/mciqtz.c index 2cc12c5b8ec..092b445fb02 100644 --- a/dlls/mciqtz32/mciqtz.c +++ b/dlls/mciqtz32/mciqtz.c @@ -1028,8 +1028,10 @@ static DWORD MCIQTZ_mciWindow(UINT wDevID, DWORD dwFlags, LPMCI_DGV_WINDOW_PARMS ShowWindow(wma->parent, lpParms->nCmdShow); } if (dwFlags & MCI_DGV_WINDOW_TEXT) { + if (!wma->parent) + return MCIERR_NO_WINDOW; TRACE("Setting caption to %s\n", debugstr_w(lpParms->lpstrText)); - IVideoWindow_put_Caption(wma->vidwin, lpParms->lpstrText); + SetWindowTextW(wma->parent, lpParms->lpstrText); } return 0; } diff --git a/dlls/winmm/tests/mci.c b/dlls/winmm/tests/mci.c index b2f3c2c8d45..764b3b13d0e 100644 --- a/dlls/winmm/tests/mci.c +++ b/dlls/winmm/tests/mci.c @@ -1428,7 +1428,7 @@ static void test_asyncWaveTypeMpegvideo(HWND hwnd) ok(err == MCIERR_NO_WINDOW, "mci window state returned %s\n", dbg_mcierr(err)); err = mciSendStringA("window mysound text abracadabra", NULL, 0, NULL); - todo_wine ok(err == MCIERR_NO_WINDOW, "mci window text returned %s\n", dbg_mcierr(err)); + ok(err == MCIERR_NO_WINDOW, "mci window text returned %s\n", dbg_mcierr(err)); err = mciSendStringA("close mysound wait", NULL, 0, NULL); ok(!err,"mci close wait returned %s\n", dbg_mcierr(err)); @@ -1707,7 +1707,7 @@ static void test_video_window(void) err = mciSendCommandW(id, MCI_WINDOW, MCI_DGV_WINDOW_TEXT, (DWORD_PTR)&parm); ok(!err, "Got %s.\n", dbg_mcierr(err)); GetWindowTextW(main_window, buffer, ARRAY_SIZE(buffer)); - todo_wine ok(!wcscmp(buffer, parm.win.lpstrText), "Got %s, expected %s\n", wine_dbgstr_w(buffer), wine_dbgstr_w(parm.win.lpstrText)); + ok(!wcscmp(buffer, parm.win.lpstrText), "Got %s, expected %s\n", wine_dbgstr_w(buffer), wine_dbgstr_w(parm.win.lpstrText)); /* video window is reset to the default window, which is visible again */ parm.win.hWnd = NULL; @@ -1732,7 +1732,7 @@ static void test_video_window(void) err = mciSendCommandW(id, MCI_WINDOW, MCI_DGV_WINDOW_TEXT, (DWORD_PTR)&parm); ok(!err, "Got %s.\n", dbg_mcierr(err)); GetWindowTextW(video_window, buffer, ARRAY_SIZE(buffer)); - todo_wine ok(!wcscmp(buffer, parm.win.lpstrText), "Got %s, expected %s\n", wine_dbgstr_w(buffer), wine_dbgstr_w(parm.win.lpstrText)); + ok(!wcscmp(buffer, parm.win.lpstrText), "Got %s, expected %s\n", wine_dbgstr_w(buffer), wine_dbgstr_w(parm.win.lpstrText)); err = mciSendCommandW(id, MCI_CLOSE, 0, 0); ok(!err, "Got %s.\n", dbg_mcierr(err));