winecoreaudio.drv: fix handle leak

Pierre Schweitzer pierre at reactos.org
Fri Dec 30 15:04:08 CST 2011


-------------- next part --------------
>From 1da203734dbbcd30a62fc8651ba3918ba48bf58b Mon Sep 17 00:00:00 2001
From: Pierre Schweitzer <pierre at reactos.org>
Date: Fri, 30 Dec 2011 21:54:47 +0100
Subject: winecoreaudio.drv: Fix handle leak.

---
 dlls/winecoreaudio.drv/midi.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/dlls/winecoreaudio.drv/midi.c b/dlls/winecoreaudio.drv/midi.c
index 55d04b5..9217044 100644
--- a/dlls/winecoreaudio.drv/midi.c
+++ b/dlls/winecoreaudio.drv/midi.c
@@ -99,6 +99,7 @@ extern int SynthUnit_Close(AUGraph graph);
 LONG CoreAudio_MIDIInit(void)
 {
     int i;
+    HANDLE hThread;
     CHAR szPname[MAXPNAMELEN] = {0};
 
     int numDest = MIDIGetNumberOfDestinations();
@@ -128,7 +129,9 @@ LONG CoreAudio_MIDIInit(void)
         InitializeCriticalSection(&midiInLock);
         midiInLock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": midiInLock");
         MIDIInThreadPortName = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("MIDIInThreadPortName.%u"), getpid());
-        CreateThread(NULL, 0, MIDIIn_MessageThread, NULL, 0, NULL);
+        hThread = CreateThread(NULL, 0, MIDIIn_MessageThread, NULL, 0, NULL);
+        if (hThread)
+            CloseHandle(hThread);
 
         name = CFStringCreateWithFormat(kCFAllocatorDefault, NULL, CFSTR("WineInputPort.%u"), getpid());
         MIDIInputPortCreate(wineMIDIClient, name, MIDIIn_ReadProc, NULL, &MIDIInPort);
-- 
1.7.4.1



More information about the wine-patches mailing list