diff options
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | glib/dbus-gproxy.c | 5 | 
2 files changed, 10 insertions, 0 deletions
@@ -1,3 +1,8 @@ +2006-01-27  Iain Holmes  <iain@openedhand.com> + +	* glib/dbus-gproxy.c (dbus_g_proxy_dispose): Protect the dispose +	method from being called multiple times. +  2006-01-19  Robert McQueen  <robot101@debian.org>  	* glib/dbus-binding-tool-glib.c: Patch from Rob Taylor diff --git a/glib/dbus-gproxy.c b/glib/dbus-gproxy.c index f8157b2d..f83dac58 100644 --- a/glib/dbus-gproxy.c +++ b/glib/dbus-gproxy.c @@ -1395,10 +1395,15 @@ dbus_g_proxy_dispose (GObject *object)    DBusGProxy *proxy = DBUS_G_PROXY (object);    DBusGProxyPrivate *priv = DBUS_G_PROXY_GET_PRIVATE(proxy); +  if (priv->pending_calls == NULL)  +    { +      return; +    }    /* Cancel outgoing pending calls */    g_hash_table_foreach (priv->pending_calls, cancel_pending_call, proxy);    g_hash_table_destroy (priv->pending_calls); +  priv->pending_calls = NULL;    if (priv->manager && proxy != priv->manager->bus_proxy)      {  | 
