summaryrefslogtreecommitdiff
path: root/gtk/gtktreestore.c
diff options
context:
space:
mode:
authorKristian Rietveld <kris@gtk.org>2011-05-09 09:51:50 +0200
committerKristian Rietveld <kris@gtk.org>2011-08-22 21:30:29 +0200
commit2f5fbcd10a4856d99d4e8a9a333a816e3035f625 (patch)
treeddb1adab9ee3086dc83b7cb11ac7caa5ba9faf74 /gtk/gtktreestore.c
parent431987a2fa8b4d7ab6a5e5491c19aa930fac7ca8 (diff)
downloadgtk+-2f5fbcd10a4856d99d4e8a9a333a816e3035f625.tar.gz
Make _get_iter invalidate iterators when FALSE is returned
Diffstat (limited to 'gtk/gtktreestore.c')
-rw-r--r--gtk/gtktreestore.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/gtk/gtktreestore.c b/gtk/gtktreestore.c
index e2e969ed5f..e0d40dd40f 100644
--- a/gtk/gtktreestore.c
+++ b/gtk/gtktreestore.c
@@ -560,13 +560,19 @@ gtk_tree_store_get_iter (GtkTreeModel *tree_model,
parent.user_data = priv->root;
if (!gtk_tree_store_iter_nth_child (tree_model, iter, &parent, indices[0]))
- return FALSE;
+ {
+ iter->stamp = 0;
+ return FALSE;
+ }
for (i = 1; i < depth; i++)
{
parent = *iter;
if (!gtk_tree_store_iter_nth_child (tree_model, iter, &parent, indices[i]))
- return FALSE;
+ {
+ iter->stamp = 0;
+ return FALSE;
+ }
}
return TRUE;