]> Pileus Git - ~andy/gtk/commitdiff
handle tree == NULL. (Fixes #392259, reported by Christian Persch).
authorKristian Rietveld <kris@gtk.org>
Fri, 5 Jan 2007 22:14:08 +0000 (22:14 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Fri, 5 Jan 2007 22:14:08 +0000 (22:14 +0000)
2007-01-05  Kristian Rietveld  <kris@gtk.org>

* gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): handle tree
== NULL.  (Fixes #392259, reported by Christian Persch).

svn path=/trunk/; revision=17092

ChangeLog
gtk/gtktreeview.c

index bfdc9b4d69c14718563d27fed466c8399021ad15..74b3a403b0098e686dfc4b91b7d454ac6d6b21a8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-01-05  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreeview.c (gtk_tree_view_dy_to_top_row): handle tree
+       == NULL.  (Fixes #392259, reported by Christian Persch).
+
 2007-01-05  Kristian Rietveld  <kris@gtk.org>
 
        * gtk/gtktreeview.c (gtk_tree_view_row_changed): do allow to
index ee3dd3367f6fd36732d43ab3b848b97e83fe205c..2a6a462f44f0112360bbb7993abe73dc953924c4 100644 (file)
@@ -6290,9 +6290,18 @@ gtk_tree_view_dy_to_top_row (GtkTreeView *tree_view)
       offset = _gtk_rbtree_find_offset (tree_view->priv->tree,
                                        tree_view->priv->dy,
                                        &tree, &node);
-      path = _gtk_tree_view_find_path (tree_view, tree, node);
-      gtk_tree_view_set_top_row (tree_view, path, offset);
-      gtk_tree_path_free (path);
+
+      if (tree == NULL)
+        {
+         tree_view->priv->top_row = NULL;
+         tree_view->priv->top_row_dy = 0;
+       }
+      else
+        {
+         path = _gtk_tree_view_find_path (tree_view, tree, node);
+         gtk_tree_view_set_top_row (tree_view, path, offset);
+         gtk_tree_path_free (path);
+       }
     }
 }