diff options
Diffstat (limited to 'atspi/atspi-misc.c')
-rw-r--r-- | atspi/atspi-misc.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/atspi/atspi-misc.c b/atspi/atspi-misc.c index 11f37da2..fa6929b3 100644 --- a/atspi/atspi-misc.c +++ b/atspi/atspi-misc.c @@ -596,7 +596,14 @@ add_accessible_from_iter (DBusMessageIter *iter) parent = _atspi_dbus_consume_accessible (&iter_struct); if (accessible->accessible_parent) g_object_unref (accessible->accessible_parent); - accessible->accessible_parent = parent; + if (parent == accessible) + { + guint pid = atspi_accessible_get_process_id (accessible, NULL); + g_warning ("Process %d sent an accessible with itself as its parent. This shouldn't happen.", pid); + accessible->accessible_parent = NULL; + } + else + accessible->accessible_parent = parent; if (dbus_message_iter_get_arg_type (&iter_struct) == 'i') { |