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



commit 9197e288ec4c2320629fba9e83409cee380f99a8
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]