GNOME Bugzilla – Bug 711837
Add goa service/sign in dialog hangs on cancel
Last modified: 2013-11-25 11:50:59 UTC
If you hit cancel before the page for sign in is fully loaded you get stuck seemingly forever waiting for g_io_stream_close (a blocking call).
+ Trace 232742
Getting libsoup to use the async version stops this from blocking. diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c index baa9290..ddca801 100644 --- a/libsoup/soup-socket.c +++ b/libsoup/soup-socket.c @@ -114,7 +114,8 @@ disconnect_internal (SoupSocket *sock, gboolean close) g_clear_object (&priv->gsock); if (priv->conn && close) - g_io_stream_close (priv->conn, NULL, NULL); + g_io_stream_close_async (priv->conn, 0, + NULL, NULL, NULL); if (priv->read_src) { g_source_destroy (priv->read_src);
Not a g-i-s bug (Fixed in libsoup 2.44.2 / bug 711842 )