libdbus-glib/libdbus-glib-0.94-fix_regression_in_marshalling_objects_as_object_paths.patch

41 lines
1.2 KiB
Diff
Raw Normal View History

From 3e0828f57c3925ea9b63d22ab82d991a0fea0536 Mon Sep 17 00:00:00 2001
From: Simon McVittie <simon.mcvittie@collabora.co.uk>
Date: Thu, 02 Jun 2011 12:49:51 +0000
Subject: Fix regression in marshalling objects as object paths
This regressed while fixing fd.o #36811. NetworkManager apparently uses
this idiom.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37852
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=628890
Tested-by: Michael Biebl <biebl@debian.org>
Reviewed-by: Colin Walters <walters@verbum.org>
---
diff --git a/dbus/dbus-gobject.c b/dbus/dbus-gobject.c
index 3b0bd17..7ee0b4f 100644
--- a/dbus/dbus-gobject.c
+++ b/dbus/dbus-gobject.c
@@ -3049,16 +3049,16 @@ out:
const char *
_dbus_gobject_get_path (GObject *obj)
{
- GSList *registrations;
+ ObjectExport *oe;
ObjectRegistration *o;
- registrations = g_object_get_data (obj, "dbus_glib_object_registrations");
+ oe = g_object_get_data (obj, "dbus_glib_object_registrations");
- if (registrations == NULL)
+ if (oe == NULL || oe->registrations == NULL)
return NULL;
/* First one to have been registered wins */
- o = registrations->data;
+ o = oe->registrations->data;
return o->object_path;
}
--
cgit v0.8.3-6-g21f6