mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-24 03:02:10 +01:00
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
This commit is contained in:
parent
219f89057b
commit
9197e288ec
@ -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'
|
||||
|
Loading…
x
Reference in New Issue
Block a user