]> Pileus Git - ~andy/gtk/commitdiff
Bug #512743. (gail_tree_view_changed_gtk): Clean cell before go through
authorLi Yuan <li.yuan@sun.com>
Fri, 12 Dec 2008 06:12:27 +0000 (06:12 +0000)
committerLi Yuan <liyuan@src.gnome.org>
Fri, 12 Dec 2008 06:12:27 +0000 (06:12 +0000)
2008-12-12  Li Yuan  <li.yuan@sun.com>

        * gailtreeview.c: Bug #512743.
        (gail_tree_view_changed_gtk): Clean cell before go through the info
        list, for "changed" signal could come before a "row-deleted".
        (clean_cell_info):
        Prevent the thread to be scheduled before clean_cell_info
        finish its job.

svn path=/trunk/; revision=21872

modules/other/gail/ChangeLog
modules/other/gail/gailtreeview.c

index 5157c33b4e72a2287390c465dc57a5ac8be263f8..4066062b1dd1b545d4fa1d29839fc240b2c0fc1a 100644 (file)
@@ -1,3 +1,12 @@
+2008-12-12  Li Yuan  <li.yuan@sun.com>
+
+       * gailtreeview.c: Bug #512743.
+       (gail_tree_view_changed_gtk): Clean cell before go through the info
+       list, for "changed" signal could come before a "row-deleted".
+       (clean_cell_info):
+       Prevent the thread to be scheduled before clean_cell_info
+       finish its job.
+
 2008-12-09  Michael Natterer  <mitch@imendio.com>
 
        * Makefile.am
index b7d6ae00e261334353bac506ddb9cb0dc21d6d56..6a8edb4555c7695e43c2fda903d34e4073975e2a 100644 (file)
@@ -2422,6 +2422,8 @@ gail_tree_view_changed_gtk (GtkTreeSelection *selection,
 
   tree_selection = gtk_tree_view_get_selection (tree_view);
 
+  clean_rows (gailview);
+
   for (l = cell_list; l; l = l->next)
     {
       info = (GailTreeViewCellInfo *) (l->data);
@@ -3529,7 +3531,7 @@ clean_cell_info (GailTreeView *gailview,
   if (cell_info->in_use) {
       obj = G_OBJECT (cell_info->cell);
       
-      gail_cell_add_state (cell_info->cell, ATK_STATE_DEFUNCT, TRUE);
+      gail_cell_add_state (cell_info->cell, ATK_STATE_DEFUNCT, FALSE);
       g_object_weak_unref (obj, (GWeakNotify) cell_destroyed, cell_info);
       cell_info->in_use = FALSE; 
       if (!gailview->garbage_collection_pending) {