From 8914e401ffa4dc06ce7cdc4df96bd2d9c41929ef Mon Sep 17 00:00:00 2001 From: =?utf-8?q?J=C3=B6rg=20H=C3=B6hle?= Date: Sun, 18 Oct 2009 18:41:10 +0200 Subject: [PATCH] winmm: Do not crash on NULL MCI Sysinfo command output buffer pointer. --- dlls/winmm/mci.c | 4 ++-- dlls/winmm/tests/mci.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/winmm/mci.c b/dlls/winmm/mci.c index e28a298..c6f3701 100644 --- a/dlls/winmm/mci.c +++ b/dlls/winmm/mci.c @@ -1746,8 +1746,8 @@ static DWORD MCI_SysInfo(UINT uDevID, DWORD dwFlags, LPMCI_SYSINFO_PARMSW lpParm LPWINE_MCIDRIVER wmd; HKEY hKey; - if (lpParms == NULL || lpParms->lpstrReturn == NULL) - return MCIERR_NULL_PARAMETER_BLOCK; + if (lpParms == NULL) return MCIERR_NULL_PARAMETER_BLOCK; + if (lpParms->lpstrReturn == NULL) return MCIERR_PARAM_OVERFLOW; TRACE("(%08x, %08X, %p[num=%d, wDevTyp=%u])\n", uDevID, dwFlags, lpParms, lpParms->dwNumber, lpParms->wDeviceType); diff --git a/dlls/winmm/tests/mci.c b/dlls/winmm/tests/mci.c index d7bc9b7..5d6949a 100644 --- a/dlls/winmm/tests/mci.c +++ b/dlls/winmm/tests/mci.c @@ -571,7 +571,7 @@ static void test_AutoOpenWAVE(HWND hwnd) /* Do not crash on NULL buffer pointer */ err = mciSendString("sysinfo waveaudio quantity open", NULL, 0, NULL); - todo_wine ok(err==MCIERR_PARAM_OVERFLOW,"mci sysinfo without buffer returned error: %d\n", err); + ok(err==MCIERR_PARAM_OVERFLOW,"mci sysinfo without buffer returned error: %d\n", err); err = mciSendString("sysinfo waveaudio quantity open", buf, sizeof(buf), NULL); ok(!err,"mci sysinfo waveaudio quantity open returned error: %d\n", err); -- 1.5.6.3