Do not free the handles once they have been sent to the client (thanks
to Jeremy White).

diff --git a/server/debugger.c b/server/debugger.c
index 6ebdea6..6cbe0e3 100644
--- a/server/debugger.c
+++ b/server/debugger.c
@@ -102,21 +102,26 @@
 /* free a debug event structure */
 static void free_event( struct thread *debugger, struct debug_event *event )
 {
-    switch(event->code)
+    /* If the event has been sent already, the handles are now under the */
+    /* responsibility of the debugger process, so we don't touch them    */
+    if (!event->sent)
     {
-    case CREATE_THREAD_DEBUG_EVENT:
-        close_handle( debugger->process, event->data.create_thread.handle );
-        break;
-    case CREATE_PROCESS_DEBUG_EVENT:
-        if (event->data.create_process.file != -1)
-            close_handle( debugger->process, event->data.create_process.file );
-        close_handle( debugger->process, event->data.create_process.thread );
-        close_handle( debugger->process, event->data.create_process.process );
-        break;
-    case LOAD_DLL_DEBUG_EVENT:
-        if (event->data.load_dll.handle != -1)
-            close_handle( debugger->process, event->data.load_dll.handle );
-        break;
+        switch(event->code)
+        {
+        case CREATE_THREAD_DEBUG_EVENT:
+            close_handle( debugger->process, event->data.create_thread.handle );
+            break;
+        case CREATE_PROCESS_DEBUG_EVENT:
+            if (event->data.create_process.file != -1)
+                close_handle( debugger->process, event->data.create_process.file );
+            close_handle( debugger->process, event->data.create_process.thread );
+            close_handle( debugger->process, event->data.create_process.process );
+            break;
+        case LOAD_DLL_DEBUG_EVENT:
+            if (event->data.load_dll.handle != -1)
+                close_handle( debugger->process, event->data.load_dll.handle );
+            break;
+        }
     }
     event->thread->debug_event = NULL;
     release_object( event->thread );