[glib] gdbus-codegen: Fix segfault when remote property is invalidated



commit 659b287a92d951d7121584587cb7aefa28e88416
Author: Tomas Bzatek <tbzatek redhat com>
Date:   Wed Sep 14 19:02:01 2011 +0200

    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 files changed, 1 insertions(+), 1 deletions(-)
---
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'



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]