From 659b287a92d951d7121584587cb7aefa28e88416 Mon Sep 17 00:00:00 2001 From: Tomas Bzatek Date: Wed, 14 Sep 2011 19:02:01 +0200 Subject: [PATCH] gdbus-codegen: Fix segfault when remote property is invalidated The 'key' variable is no longer valid outside the cycle, owned and probably already freed by GVariant. This causes apps to segfault when proxy is constructed and a property on remote d-bus service changes (actually is invalidated). Looks like a typo anyway. https://bugzilla.gnome.org/show_bug.cgi?id=659070 --- gio/gdbus-2.0/codegen/codegen.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gio/gdbus-2.0/codegen/codegen.py b/gio/gdbus-2.0/codegen/codegen.py index ed9b60a..3fe2382 100644 --- a/gio/gdbus-2.0/codegen/codegen.py +++ b/gio/gdbus-2.0/codegen/codegen.py @@ -1723,7 +1723,7 @@ class CodeGenerator: ' for (n = 0; invalidated_properties[n] != NULL; n++)\n' ' {\n' ' info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_%s_interface_info, invalidated_properties[n]);\n' - ' g_datalist_remove_data (&proxy->priv->qdata, key);\n' + ' g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]);\n' ' if (info != NULL)\n' ' g_object_notify (G_OBJECT (proxy), info->hyphen_name);\n' ' }\n' -- 2.7.4