Module: wine Branch: master Commit: 72be44ee7dd777903c9605d4fb455a9f5382bb77 URL: http://source.winehq.org/git/wine.git/?a=commit;h=72be44ee7dd777903c9605d4fb...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Thu May 22 11:39:40 2008 -0700
winmm: Fix valgrind warnings on exit.
---
dlls/winmm/lolvldrv.c | 18 ++++++++++++------ 1 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/dlls/winmm/lolvldrv.c b/dlls/winmm/lolvldrv.c index e0bf737..d50f329 100644 --- a/dlls/winmm/lolvldrv.c +++ b/dlls/winmm/lolvldrv.c @@ -763,10 +763,16 @@ void MMDRV_Exit(void) MMDRV_ExitPerType(&MMDrvs[i], MMDRV_WAVEOUT); CloseDriver(MMDrvs[i].hDriver, 0, 0); } - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_AUX].lpMlds - 1); - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIXER].lpMlds - 1); - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIDIIN].lpMlds - 1); - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIDIOUT].lpMlds - 1); - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_WAVEIN].lpMlds - 1); - HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_WAVEOUT].lpMlds - 1); + if (llTypes[MMDRV_AUX].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_AUX].lpMlds - 1); + if (llTypes[MMDRV_MIXER].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIXER].lpMlds - 1); + if (llTypes[MMDRV_MIDIIN].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIDIIN].lpMlds - 1); + if (llTypes[MMDRV_MIDIOUT].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_MIDIOUT].lpMlds - 1); + if (llTypes[MMDRV_WAVEIN].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_WAVEIN].lpMlds - 1); + if (llTypes[MMDRV_WAVEOUT].lpMlds) + HeapFree(GetProcessHeap(), 0, llTypes[MMDRV_WAVEOUT].lpMlds - 1); }