From d8f0947356f95ff641d2fcdc1eb8dfd09707eaba Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Fri, 30 Apr 2010 01:23:45 +0300 Subject: [PATCH] Fix parent path introspection data invalidation for multiple levels In the case that parent path data needs to be invalidated we shouldn't stop at the immediate parent if it doesn't have our own handler registered but should continue upwards in the tree until we reach root or our own handler. --- gdbus/object.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gdbus/object.c b/gdbus/object.c index 592e2d3..ff69641 100644 --- a/gdbus/object.c +++ b/gdbus/object.c @@ -308,8 +308,10 @@ static void invalidate_parent_data(DBusConnection *conn, const char *child_path) goto done; if (!dbus_connection_get_object_path_data(conn, parent_path, - (void *) &data)) + (void *) &data)) { + invalidate_parent_data(conn, parent_path); goto done; + } if (!data) goto done; -- 2.7.4