diff options
author | Dan Winship <danw@gnome.org> | 2013-01-09 17:21:13 -0500 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2013-01-09 17:22:42 -0500 |
commit | 7afbc9dc94e36ede35f06a9269e2853c002f8f6f (patch) | |
tree | 535710e829d1303b569d2af5c6bd070f2c8a9953 | |
parent | 67fb3730a1f5ded95e1a51dd6b3e00cb41dfbdbc (diff) | |
download | libsoup-7afbc9dc94e36ede35f06a9269e2853c002f8f6f.tar.gz libsoup-7afbc9dc94e36ede35f06a9269e2853c002f8f6f.tar.bz2 libsoup-7afbc9dc94e36ede35f06a9269e2853c002f8f6f.zip |
soup-session: fix a deadlock when aborting a SoupSessionSync
We need to signal conn_cond when removing an item from the queue,
since flush_queue() expects that... (and also, since in some cases,
removing a message from the queue will allow another one to start).
https://bugzilla.gnome.org/show_bug.cgi?id=691399
-rw-r--r-- | libsoup/soup-session.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c index 3b23846c..c4abe1d9 100644 --- a/libsoup/soup-session.c +++ b/libsoup/soup-session.c @@ -1422,6 +1422,7 @@ soup_session_unqueue_item (SoupSession *session, g_mutex_lock (&priv->conn_lock); host = get_host_for_message (session, item->msg); host->num_messages--; + g_cond_broadcast (&priv->conn_cond); g_mutex_unlock (&priv->conn_lock); /* g_signal_handlers_disconnect_by_func doesn't work if you |