diff options
author | Dan Winship <danw@gnome.org> | 2012-08-06 10:33:38 -0400 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2012-08-06 10:33:38 -0400 |
commit | 1ce7f05e303cda7e53cf7d8e7797f0340e10fd14 (patch) | |
tree | d175b3b2a509318454b9bb3fe021da5e93c16ef5 /libsoup/soup-socket.c | |
parent | a0ceee0c3c17dde75faeb009bb6376b40780681f (diff) | |
download | libsoup-1ce7f05e303cda7e53cf7d8e7797f0340e10fd14.tar.gz |
soup-socket.c: fix a use-after-free of a GCancellable
Diffstat (limited to 'libsoup/soup-socket.c')
-rw-r--r-- | libsoup/soup-socket.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c index 4369ff38..c789e648 100644 --- a/libsoup/soup-socket.c +++ b/libsoup/soup-socket.c @@ -670,10 +670,11 @@ socket_connected (SoupSocket *sock, GSocketConnection *conn, GError *error) if (priv->connect_cancel) { GCancellable *cancellable = priv->connect_cancel; + gboolean cancelled = g_cancellable_is_cancelled (cancellable); g_object_unref (priv->connect_cancel); priv->connect_cancel = NULL; - if (g_cancellable_is_cancelled (cancellable)) + if (cancelled) return SOUP_STATUS_CANCELLED; } |