diff options
author | Carlos Garcia Campos <cgarcia@igalia.com> | 2018-04-20 12:14:55 +0200 |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@gnome.org> | 2018-04-20 12:19:19 +0200 |
commit | e8995d4e1d5cf984cf10327c59808976425b2f9c (patch) | |
tree | a840d0f844e90747f3f27a41bba60ff7e348c4f2 | |
parent | 7f47360ec49fa82d5119258dfe860c232cb70642 (diff) | |
download | libsoup-e8995d4e1d5cf984cf10327c59808976425b2f9c.tar.gz |
soup-socket: fix critical warning when the peer-certificate changes after disconnect
(process:15586): GLib-GIO-CRITICAL **: 12:14:39.627: g_tls_connection_get_peer_certificate_errors: assertion 'G_IS_TLS_CONNECTION (conn)' failed
We should disconnect the signal on disconnect_internal before clearing
the connection object.
-rw-r--r-- | libsoup/soup-socket.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c index 5363dc72..311c627c 100644 --- a/libsoup/soup-socket.c +++ b/libsoup/soup-socket.c @@ -188,6 +188,7 @@ disconnect_internal (SoupSocket *sock, gboolean close) g_clear_object (&priv->gsock); if (priv->conn && close) { g_io_stream_close (priv->conn, NULL, NULL); + g_signal_handlers_disconnect_by_data (priv->conn, sock); g_clear_object (&priv->conn); } |