diff options
author | Carlos Garcia Campos <cgarcia@igalia.com> | 2022-10-12 08:45:40 +0200 |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@gnome.org> | 2022-10-14 12:01:52 +0000 |
commit | 5ce3a206aeaab8c01431ead75ea8107729447d8b (patch) | |
tree | 1bc978583a48f3a36ca03e0f2f210cb9d86e65b3 /libsoup | |
parent | 1d5b651ff5364f0024903cf2b0ef6a4e3d7258ef (diff) | |
download | libsoup-5ce3a206aeaab8c01431ead75ea8107729447d8b.tar.gz |
server-connection: attach a ref of the socket to io stream on steal
Previously we transferred the ownership of the socket to the io stream,
but now we keep the ref in the connection that can be disposed before
the io stream.
Diffstat (limited to 'libsoup')
-rw-r--r-- | libsoup/server/soup-server-connection.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libsoup/server/soup-server-connection.c b/libsoup/server/soup-server-connection.c index ac0f1aaa..380ac42b 100644 --- a/libsoup/server/soup-server-connection.c +++ b/libsoup/server/soup-server-connection.c @@ -549,9 +549,10 @@ soup_server_connection_steal (SoupServerConnection *conn) priv = soup_server_connection_get_instance_private (conn); stream = priv->io_data ? soup_server_message_io_steal (priv->io_data) : NULL; - if (stream) { + if (stream && priv->socket) { g_object_set_data_full (G_OBJECT (stream), "GSocket", - priv->socket, g_object_unref); + g_object_ref (priv->socket), + g_object_unref); } /* Cache local and remote address */ |