summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross@openedhand.com>2006-06-12 14:22:48 +0000
committerRoss Burton <ross@openedhand.com>2006-06-12 14:22:48 +0000
commitfb4cd60e85d2a692e5d00303a842e4256abfffdb (patch)
treec1a8ac896c6c97c66c4b107b527583d9f722744e
parentfc55f9adf8d02a49d9ebf8f6b010c409e5490d5c (diff)
2006-06-12 Ross Burton <ross@openedhand.com>
* glib/dbus-gproxy.c: Don't leak a GArray when firing signals (thank Rob Taylor for review).
-rw-r--r--ChangeLog5
-rw-r--r--glib/dbus-gproxy.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 78c2f24c..357b29c7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-06-12 Ross Burton <ross@openedhand.com>
+
+ * glib/dbus-gproxy.c:
+ Don't leak a GArray when firing signals (thank Rob Taylor for review).
+
2006-06-12 Thiago Macieira <thiago.macieira@trolltech.com>
* Released 0.62
diff --git a/glib/dbus-gproxy.c b/glib/dbus-gproxy.c
index e422ceab..e4243114 100644
--- a/glib/dbus-gproxy.c
+++ b/glib/dbus-gproxy.c
@@ -1625,6 +1625,7 @@ dbus_g_proxy_emit_remote_signal (DBusGProxy *proxy,
char *name;
GQuark q;
DBusGProxyPrivate *priv = DBUS_G_PROXY_GET_PRIVATE(proxy);
+ GArray *msg_gsignature = NULL;
g_return_if_fail (!DBUS_G_PROXY_DESTROYED (proxy));
@@ -1645,7 +1646,6 @@ dbus_g_proxy_emit_remote_signal (DBusGProxy *proxy,
if (q != 0)
{
GArray *gsignature;
- GArray *msg_gsignature;
guint i;
gsignature = g_datalist_id_get_data (&priv->signal_signatures, q);
@@ -1672,6 +1672,8 @@ dbus_g_proxy_emit_remote_signal (DBusGProxy *proxy,
out:
g_free (name);
+ if (msg_gsignature)
+ g_array_free (msg_gsignature, TRUE);
return;
mismatch:
#if 0