2004-08-21 Tor Lillqvist <tml@iki.fi>
+ * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
+ break out of its loop. Prevents a thread leak. (#147392, Peter
+ Zelezny)
+
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
2004-08-21 Tor Lillqvist <tml@iki.fi>
+ * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
+ break out of its loop. Prevents a thread leak. (#147392, Peter
+ Zelezny)
+
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
2004-08-21 Tor Lillqvist <tml@iki.fi>
+ * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
+ break out of its loop. Prevents a thread leak. (#147392, Peter
+ Zelezny)
+
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
2004-08-21 Tor Lillqvist <tml@iki.fi>
+ * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
+ break out of its loop. Prevents a thread leak. (#147392, Peter
+ Zelezny)
+
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
2004-08-21 Tor Lillqvist <tml@iki.fi>
+ * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
+ break out of its loop. Prevents a thread leak. (#147392, Peter
+ Zelezny)
+
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
SetEvent (channel->data_avail_noticed_event);
if (channel->type == G_IO_WIN32_SOCKET)
+ {
+ /* Tell select_thread() to exit */
+ channel->needs_close = 1;
+ /* Wake up select_thread() from its blocking select() */
send (channel->reset_send, send_buffer, sizeof (send_buffer), 0);
+ }
g_io_channel_unref (watch->channel);
UNLOCK (channel->mutex);