diff options
Diffstat (limited to 'extra/dbus-glib/bugfix-in-marshalling-objects-as-object-paths.patch')
-rw-r--r-- | extra/dbus-glib/bugfix-in-marshalling-objects-as-object-paths.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/extra/dbus-glib/bugfix-in-marshalling-objects-as-object-paths.patch b/extra/dbus-glib/bugfix-in-marshalling-objects-as-object-paths.patch new file mode 100644 index 000000000..246b85550 --- /dev/null +++ b/extra/dbus-glib/bugfix-in-marshalling-objects-as-object-paths.patch @@ -0,0 +1,40 @@ +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 |