-
Ignacio Casal Quinteiro authored
When implementing blocking operations on top of nonblocking sockets we should always first try to perform the operation and then if needed handle EAGAIN and wait with g_socket_wait_condition. This is an optimization since we avoid calling wait condition when it is not needed, but most importantly this fixes hangs on win32 where some events (in particular FD_WRITE) are only emitted after the operation fails with EWOULDBLOCK. https://bugzilla.gnome.org/show_bug.cgi?id=732439 https://bugzilla.gnome.org/show_bug.cgi?id=741707
cf03e824