GtkIconViewAccessible: Don't access freed item

Don't get index from deleted GtkIconViewItem.
Remove the item before traversing list of items.

https://bugzilla.gnome.org/show_bug.cgi?id=701884
This commit is contained in:
Marek Kasik 2014-03-04 15:17:23 +01:00 committed by Benjamin Otte
parent 01fe1282fc
commit 158cb29e55

View File

@ -1128,7 +1128,7 @@ gtk_icon_view_accessible_model_row_deleted (GtkTreeModel *tree_model,
{ {
deleted_item = items; deleted_item = items;
} }
if (info->index != item->item->index) else if (info->index != item->item->index)
{ {
if (tmp_list == NULL) if (tmp_list == NULL)
tmp_list = items; tmp_list = items;
@ -1138,7 +1138,6 @@ gtk_icon_view_accessible_model_row_deleted (GtkTreeModel *tree_model,
items = items->next; items = items->next;
} }
gtk_icon_view_accessible_traverse_items (view, tmp_list);
if (deleted_item) if (deleted_item)
{ {
info = deleted_item->data; info = deleted_item->data;
@ -1149,6 +1148,7 @@ gtk_icon_view_accessible_model_row_deleted (GtkTreeModel *tree_model,
g_object_unref (info->item); g_object_unref (info->item);
g_free (info); g_free (info);
} }
gtk_icon_view_accessible_traverse_items (view, tmp_list);
return; return;
} }