summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrice Bellet <fabrice@bellet.info>2019-06-28 13:54:57 +0200
committerOlivier CrĂȘte <olivier.crete@collabora.com>2019-07-04 17:03:43 -0400
commit3a4e2b234059f262b0df5fa99ea54a3071892b2e (patch)
treec3bad55d7167b85d6a647385b68f43baca310a19
parent13378275c3d60a5ff487e0828db2ac6a151be243 (diff)
downloadlibnice-3a4e2b234059f262b0df5fa99ea54a3071892b2e.tar.gz
tcp-bsd: fix a heap-use-after-free
-rw-r--r--socket/tcp-bsd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/socket/tcp-bsd.c b/socket/tcp-bsd.c
index 406e955..00a46ed 100644
--- a/socket/tcp-bsd.c
+++ b/socket/tcp-bsd.c
@@ -436,7 +436,7 @@ socket_send_more (
gpointer data)
{
NiceSocket *sock = (NiceSocket *) data;
- TcpPriv *priv = sock->priv;
+ TcpPriv *priv;
g_mutex_lock (&mutex);
@@ -447,6 +447,8 @@ socket_send_more (
return FALSE;
}
+ priv = sock->priv;
+
/* connection hangs up or queue was emptied */
if (condition & G_IO_HUP ||
nice_socket_flush_send_queue_to_socket (sock->fileno,