GSocket – GSocketSource finalizing not threadsafe on Windows
authorSebastian Dröge <slomo@circular-chaos.org>
Sun, 28 Jul 2013 14:43:44 +0000 (16:43 +0200)
committerSebastian Dröge <slomo@circular-chaos.org>
Thu, 22 Aug 2013 14:14:56 +0000 (16:14 +0200)
commitab6b7dbc2efc506e43616941ac70f14fc20de574
treefa07939591217f7eae9d37d214d40380274ee2e2
parentb3b6aab007e8cf0c5a88cba8deb484269ad7eab1
GSocket – GSocketSource finalizing not threadsafe on Windows

The requested_conditions list access is not threadsafe. When passing
the socket ownership from a GSource callback to another thread, which
also creates a GSocketSource for the socket, it can happen that the
original GSocketSource is finalized at the same time as the new one
is created. This would cause inconsistencies in the requested_conditions
list and can cause assertions or completely undefined behaviour.

https://bugzilla.gnome.org/show_bug.cgi?id=705027
gio/gsocket.c