Check for NULL ptr in midiStreamOut.
diff --git a/dlls/winmm/mmsystem.c b/dlls/winmm/mmsystem.c index f16d9d1..5a51ff3 100644 --- a/dlls/winmm/mmsystem.c +++ b/dlls/winmm/mmsystem.c
@@ -3469,10 +3469,12 @@ if (!MMSYSTEM_GetMidiStream(hMidiStrm, &lpMidiStrm, NULL)) { ret = MMSYSERR_INVALHANDLE; + } else if (!lpMidiHdr) { + ret = MMSYSERR_INVALPARAM; } else { if (!PostThreadMessageA(lpMidiStrm->dwThreadID, - WINE_MSM_HEADER, cbMidiHdr, - (DWORD)lpMidiHdr)) { + WINE_MSM_HEADER, cbMidiHdr, + (DWORD)lpMidiHdr)) { WARN("bad PostThreadMessageA\n"); ret = MMSYSERR_ERROR; }