Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gtk+/ChangeLog,v
retrieving revision 1.4000.2.346
diff -u -3 -r1.4000.2.346 ChangeLog
--- ChangeLog	25 Jan 2004 22:09:26 -0000	1.4000.2.346
+++ ChangeLog	29 Jan 2004 23:48:38 -0000
@@ -1,3 +1,8 @@
+2004-01-30  Not Zed  <NotZed@Ximian.com>
+
+	* gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
+	handler when we clear the timeout id.
+
 2004-01-25  Tor Lillqvist  <tml@iki.fi>
 
 	* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
Index: gtk/gtktreeview.c
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/gtktreeview.c,v
retrieving revision 1.305.2.36
diff -u -3 -r1.305.2.36 gtktreeview.c
--- gtk/gtktreeview.c	17 Dec 2003 22:34:43 -0000	1.305.2.36
+++ gtk/gtktreeview.c	29 Jan 2004 23:49:01 -0000
@@ -6498,9 +6498,11 @@
 static void
 cancel_arrow_animation (GtkTreeView *tree_view)
 {
-  if (tree_view->priv->expand_collapse_timeout)
+  if (tree_view->priv->expand_collapse_timeout) {
     while (do_expand_collapse (tree_view));
-  tree_view->priv->expand_collapse_timeout = 0;
+    gtk_timeout_remove (tree_view->priv->expand_collapse_timeout);
+    tree_view->priv->expand_collapse_timeout = 0;
+  }
 }
 
 static void
