OSDN Git Service

* cygtls.cc (_cygtls::remove): Always close sockevt handle.
authorcorinna <corinna>
Mon, 18 Apr 2011 15:51:53 +0000 (15:51 +0000)
committercorinna <corinna>
Mon, 18 Apr 2011 15:51:53 +0000 (15:51 +0000)
winsup/cygwin/ChangeLog
winsup/cygwin/cygtls.cc

index b163297..9958a3f 100644 (file)
@@ -1,5 +1,9 @@
 2011-04-18  Corinna Vinschen  <corinna@vinschen.de>
 
+       * cygtls.cc (_cygtls::remove): Always close sockevt handle.
+
+2011-04-18  Corinna Vinschen  <corinna@vinschen.de>
+
        * cygwin.din (ppoll): Export.
        * poll.cc (ppoll): Implement.
        * posix.sgml (std-gnu): Add ppoll.
index d61ea4d..026d4c8 100644 (file)
@@ -146,13 +146,14 @@ _cygtls::remove (DWORD wait)
     return;
 
   debug_printf ("wait %p", wait);
+  if (locals.select.sockevt)
+      CloseHandle (locals.select.sockevt);
   if (wait)
     {
       /* FIXME: Need some sort of atthreadexit function to allow things like
         select to control this themselves. */
       if (locals.select.sockevt)
        {
-         CloseHandle (locals.select.sockevt);
          locals.select.sockevt = NULL;
          free_local (select.ser_num);
          free_local (select.w4);