[PATCH] winmm: Cope with empty string in mciSendString

Bruno Jesus 00cpxxx at gmail.com
Tue Feb 28 22:18:20 CST 2017


From: Bruno Jesus <bjesus at codeweavers.com>

Signed-off-by: Bruno Jesus <bjesus at codeweavers.com>
---
 dlls/winmm/mci.c       | 3 +++
 dlls/winmm/tests/mci.c | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/dlls/winmm/mci.c b/dlls/winmm/mci.c
index b8adea6..f772388 100644
--- a/dlls/winmm/mci.c
+++ b/dlls/winmm/mci.c
@@ -1343,6 +1343,9 @@ DWORD WINAPI mciSendStringW(LPCWSTR lpstrCommand, LPWSTR lpstrRet,
           debugstr_w(lpstrCommand), lpstrRet, uRetLen, hwndCallback);
     if (lpstrRet && uRetLen) *lpstrRet = '\0';
 
+    if (!lpstrCommand[0])
+        return MCIERR_MISSING_COMMAND_STRING;
+
     /* format is <command> <device> <optargs> */
     if (!(verb = HeapAlloc(GetProcessHeap(), 0, (strlenW(lpstrCommand)+1) * sizeof(WCHAR))))
 	return MCIERR_OUT_OF_MEMORY;
diff --git a/dlls/winmm/tests/mci.c b/dlls/winmm/tests/mci.c
index 9ff6c58..52790c8 100644
--- a/dlls/winmm/tests/mci.c
+++ b/dlls/winmm/tests/mci.c
@@ -198,7 +198,7 @@ static void test_mciParser(HWND hwnd)
 
     buf[0]='z';
     err = mciSendStringA("", buf, sizeof(buf), NULL);
-    todo_wine ok(err==MCIERR_MISSING_COMMAND_STRING,"empty string: %s\n", dbg_mcierr(err));
+    ok(err==MCIERR_MISSING_COMMAND_STRING,"empty string: %s\n", dbg_mcierr(err));
     ok(!buf[0], "error buffer %s\n", buf);
 
     buf[0]='d';
-- 
2.9.3




More information about the wine-patches mailing list