From 6a63a905bfb32b808688c3fc1c21c8264b4a6944 Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Fri, 31 Mar 2017 13:04:43 +0200 Subject: [PATCH] dbus-proxy: Fix leak in setup phase Sometimes we get an EAGAIN error in the due to the socket being nonblocking. In the setup phase we just allocated the new buffer and this causes a leak. Free it in this case. --- dbus-proxy/flatpak-proxy.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dbus-proxy/flatpak-proxy.c b/dbus-proxy/flatpak-proxy.c index 46a5fa73..d2b74b6b 100644 --- a/dbus-proxy/flatpak-proxy.c +++ b/dbus-proxy/flatpak-proxy.c @@ -2233,7 +2233,11 @@ side_in_cb (GSocket *socket, GIOCondition condition, gpointer user_data) buffer = side->current_read_buffer; if (!buffer_read (side, buffer, socket)) - break; + { + if (buffer != side->current_read_buffer) + buffer_unref (buffer); + break; + } if (!client->authenticated) {