[libsoup/gnome-3-6] soup-session: fix a deadlock when aborting a SoupSessionSync



commit 8c0dd4325249fa5168e2d1c1cdd0a2771e1761ac
Author: Dan Winship <danw gnome org>
Date:   Wed Jan 9 17:21:13 2013 -0500

    soup-session: fix a deadlock when aborting a SoupSessionSync
    
    We need to signal 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

 libsoup/soup-session-sync.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
---
diff --git a/libsoup/soup-session-sync.c b/libsoup/soup-session-sync.c
index ff8bf0a..39817bd 100644
--- a/libsoup/soup-session-sync.c
+++ b/libsoup/soup-session-sync.c
@@ -273,6 +273,7 @@ process_queue_item (SoupMessageQueueItem *item)
 			item->state = SOUP_MESSAGE_FINISHED;
 			soup_message_finished (item->msg);
 			soup_session_unqueue_item (session, item);
+			g_cond_broadcast (&priv->cond);
 			break;
 
 		default:



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]