summaryrefslogtreecommitdiff
path: root/libsoup/soup-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsoup/soup-session.c')
-rw-r--r--libsoup/soup-session.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
index a01aa95d..64201838 100644
--- a/libsoup/soup-session.c
+++ b/libsoup/soup-session.c
@@ -4769,13 +4769,15 @@ soup_session_steal_connection (SoupSession *session,
g_mutex_unlock (&priv->conn_lock);
sock = soup_connection_get_socket (conn);
- g_object_set (G_OBJECT (sock),
- SOUP_SOCKET_CLOSE_ON_DISPOSE, FALSE,
+ g_object_set (sock,
SOUP_SOCKET_TIMEOUT, 0,
NULL);
- g_object_unref (conn);
stream = soup_message_io_steal (item->msg);
+ g_object_set_data_full (G_OBJECT (stream), "GSocket",
+ soup_socket_steal_gsocket (sock),
+ g_object_unref);
+ g_object_unref (conn);
soup_message_queue_item_unref (item);
return stream;