[Galago-commits] r2635 - in trunk/libgalago: . libgalago

galago-commits at freedesktop.org galago-commits at freedesktop.org
Tue Mar 28 01:39:14 PST 2006


Author: chipx86
Date: 2006-03-28 01:39:07 -0800 (Tue, 28 Mar 2006)
New Revision: 2635

Modified:
   trunk/libgalago/ChangeLog
   trunk/libgalago/libgalago/galago-context.c
   trunk/libgalago/libgalago/galago-object.c
Log:
- Fixed a memory leak in GalagoObject where the D-BUS path wasn't being freed.
- Fixed a potential memory leak in GalagoContext where stored user data in an object wasn't being unset.


Modified: trunk/libgalago/ChangeLog
===================================================================
--- trunk/libgalago/ChangeLog	2006-03-27 20:05:37 UTC (rev 2634)
+++ trunk/libgalago/ChangeLog	2006-03-28 09:39:07 UTC (rev 2635)
@@ -1,3 +1,12 @@
+Tue Mar 28 01:37:38 PST 2006  Christian Hammond <chipx86 at chipx86.com>
+
+	* libgalago/galago-context.c:
+	* libgalago/galago-object.c:
+	  - Fixed a memory leak in GalagoObject where the D-BUS path wasn't
+	    being freed.
+	  - Fixed a potential memory leak in GalagoContext where stored user
+	    data in an object wasn't being unset.
+
 Fri Mar 24 01:23:12 PST 2006  Christian Hammond <chipx86 at chipx86.com>
 
 	* libgalago/galago-key-value.c:

Modified: trunk/libgalago/libgalago/galago-context.c
===================================================================
--- trunk/libgalago/libgalago/galago-context.c	2006-03-27 20:05:37 UTC (rev 2634)
+++ trunk/libgalago/libgalago/galago-context.c	2006-03-28 09:39:07 UTC (rev 2635)
@@ -589,7 +589,10 @@
 	signal_id = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(person),
 												  "_galago_id_signal_id"));
 	if (signal_id > 0)
+	{
 		g_signal_handler_disconnect(person, signal_id);
+		g_object_set_data(G_OBJECT(person), "_galago_id_signal_id", NULL);
+	}
 
 	g_object_set_data(G_OBJECT(person), "_galago_id_signal_id", NULL);
 

Modified: trunk/libgalago/libgalago/galago-object.c
===================================================================
--- trunk/libgalago/libgalago/galago-object.c	2006-03-27 20:05:37 UTC (rev 2634)
+++ trunk/libgalago/libgalago/galago-object.c	2006-03-28 09:39:07 UTC (rev 2635)
@@ -164,6 +164,14 @@
 
 	if (object->priv != NULL)
 	{
+		if (object->priv->dbus_path != NULL)
+		{
+			galago_context_push(object->priv->context);
+			galago_context_remove_object(object);
+			galago_context_pop();
+			g_free(object->priv->dbus_path);
+		}
+
 		if (object->priv->attrs_table != NULL)
 			g_hash_table_destroy(object->priv->attrs_table);
 



More information about the galago-commits mailing list