mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 15:06:14 +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
53e52d9f72
commit
659b287a92
@ -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…
Reference in New Issue
Block a user