dbus/dbus dbus-object-tree.c,1.15,1.16

Joe Shaw joe at freedesktop.org
Wed Mar 9 09:30:40 PST 2005


Update of /cvs/dbus/dbus/dbus
In directory gabe:/tmp/cvs-serv13898/dbus

Modified Files:
	dbus-object-tree.c 
Log Message:
2005-03-09  Joe Shaw  <joeshaw at novell.com>

	* dbus/dbus-object-tree.c
	(_dbus_object_tree_unregister_and_unlock): If checks are enabled
	and we try to unregister a path that's not registered, still go
	through the process of unlocking and don't just return.

Index: dbus-object-tree.c
===================================================================
RCS file: /cvs/dbus/dbus/dbus/dbus-object-tree.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- dbus-object-tree.c	17 Feb 2005 21:19:49 -0000	1.15
+++ dbus-object-tree.c	9 Mar 2005 17:30:38 -0000	1.16
@@ -451,6 +451,9 @@
 
   _dbus_assert (path != NULL);
 
+  unregister_function = NULL;
+  user_data = NULL;
+
   subtree = find_subtree (tree, path, &i);
 
 #ifndef DBUS_DISABLE_CHECKS
@@ -459,7 +462,7 @@
       _dbus_warn ("Attempted to unregister path (path[0] = %s path[1] = %s) which isn't registered\n",
                   path[0] ? path[0] : "null",
                   path[1] ? path[1] : "null");
-      return;
+      goto unlock;    
     }
 #else
   _dbus_assert (subtree != NULL);
@@ -495,6 +498,7 @@
     }
   subtree = NULL;
 
+unlock:
   connection = tree->connection;
 
   /* Unlock and call application code */



More information about the dbus-commit mailing list