Commit ea5a6f2d authored by Dan Kegel's avatar Dan Kegel Committed by Alexandre Julliard

winmm: Don't convert return string in mciSendStringA on error.

parent c9257aed
...@@ -1506,7 +1506,7 @@ DWORD WINAPI mciSendStringA(LPCSTR lpstrCommand, LPSTR lpstrRet, ...@@ -1506,7 +1506,7 @@ DWORD WINAPI mciSendStringA(LPCSTR lpstrCommand, LPSTR lpstrRet,
} }
} }
ret = mciSendStringW(lpwstrCommand, lpwstrRet, uRetLen, hwndCallback); ret = mciSendStringW(lpwstrCommand, lpwstrRet, uRetLen, hwndCallback);
if (lpwstrRet) if (!ret && lpwstrRet)
WideCharToMultiByte( CP_ACP, 0, lpwstrRet, -1, lpstrRet, uRetLen, NULL, NULL ); WideCharToMultiByte( CP_ACP, 0, lpwstrRet, -1, lpstrRet, uRetLen, NULL, NULL );
HeapFree(GetProcessHeap(), 0, lpwstrCommand); HeapFree(GetProcessHeap(), 0, lpwstrCommand);
HeapFree(GetProcessHeap(), 0, lpwstrRet); HeapFree(GetProcessHeap(), 0, lpwstrRet);
......
...@@ -53,7 +53,7 @@ START_TEST(mci) ...@@ -53,7 +53,7 @@ START_TEST(mci)
memset(buf, 0, sizeof(buf)); memset(buf, 0, sizeof(buf));
err = mciSendString(command_close_all, buf, sizeof(buf), hwnd); err = mciSendString(command_close_all, buf, sizeof(buf), hwnd);
todo_wine ok(!err,"mciSendString(%s, buf, sizeof(buf) , NULL) returned error: %d\n", command_close_all, err); todo_wine ok(!err,"mciSendString(%s, buf, sizeof(buf) , NULL) returned error: %d\n", command_close_all, err);
todo_wine ok(buf[0] == 0, "mciSendString(%s, buf, sizeof(buf) , NULL) changed output buffer: %s\n", command_close_all, buf); ok(buf[0] == 0, "mciSendString(%s, buf, sizeof(buf) , NULL) changed output buffer: %s\n", command_close_all, buf);
memset(buf, 0, sizeof(buf)); memset(buf, 0, sizeof(buf));
err = mciSendString(command_sysinfo, buf, sizeof(buf), NULL); err = mciSendString(command_sysinfo, buf, sizeof(buf), NULL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment