[libsoup/gnome-3-8] soup-session: Force cleanup of REMOTE_DISCONNECTED conns for sync sessions



commit c764b854db6c6c1801ea190a4b8936d47c26bcab
Author: Philip Withnall <philip tecnocode co uk>
Date:   Tue Jul 2 15:04:18 2013 +0100

    soup-session: Force cleanup of REMOTE_DISCONNECTED conns for sync sessions
    
    get_connection() assumed that REMOTE_DISCONNECTED connections would get
    implicitly cleaned up elsewhere in the code, which is true for async
    sessions, but not sync ones. This could lead to connection exhaustion and
    hence hangs.
    
    Closes: https://bugzilla.gnome.org/show_bug.cgi?id=703463
    (cherry picked from commit 2081c31235e7c2b3a15fa0a819631106cf4c3efa)

 libsoup/soup-session.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
index 186d57a..812d6e8 100644
--- a/libsoup/soup-session.c
+++ b/libsoup/soup-session.c
@@ -1721,6 +1721,8 @@ get_connection (SoupMessageQueueItem *item, gboolean *should_cleanup)
        gboolean my_should_cleanup = FALSE;
        gboolean need_new_connection;
 
+       soup_session_cleanup_connections (session, FALSE);
+
        need_new_connection =
                (soup_message_get_flags (item->msg) & SOUP_MESSAGE_NEW_CONNECTION) ||
                (!(soup_message_get_flags (item->msg) & SOUP_MESSAGE_IDEMPOTENT) &&


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