+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
+Sun Jan 27 23:23:23 Kristian Rietveld <kris@gtk.org>
+
+ * gtk/gtkrbtree.[ch]: add _gtk_rbtree_mark_invalid (my previous
+ commit already needed this ...)
+
Sun Jan 27 22:13:02 Kristian Rietveld <kris@gtk.org>
Fix for bug #69586
while ((node = _gtk_rbtree_next (tree, node)) != NULL);
}
+void
+_gtk_rbtree_mark_invalid (GtkRBTree *tree)
+{
+ GtkRBNode *node;
+
+ if (tree == NULL)
+ return;
+ node = tree->root;
+ g_assert (node);
+
+ while (node->left != tree->nil)
+ node = node->left;
+
+ do
+ {
+ GTK_RBNODE_SET_FLAG (node, GTK_RBNODE_INVALID);
+ GTK_RBNODE_SET_FLAG (node, GTK_RBNODE_DESCENDANTS_INVALID);
+
+ if (node->children)
+ _gtk_rbtree_mark_invalid (node->children);
+ }
+ while ((node = _gtk_rbtree_next (tree, node)) != NULL);
+}
+
typedef struct _GtkRBReorder
{
GtkRBTree *children;
void _gtk_rbtree_node_mark_valid (GtkRBTree *tree,
GtkRBNode *node);
void _gtk_rbtree_column_invalid (GtkRBTree *tree);
+void _gtk_rbtree_mark_invalid (GtkRBTree *tree);
gint _gtk_rbtree_node_find_offset (GtkRBTree *tree,
GtkRBNode *node);
gint _gtk_rbtree_node_find_parity (GtkRBTree *tree,