aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog1
-rw-r--r--mail/message-list.c8
2 files changed, 6 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 3bef3dcf12..caa94b8278 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -3,6 +3,7 @@
* message-list.c (tree_equal): Debug function to compare the tree
we think we have, after an incremental update.
(build_tree): Check the tree after we've built it.
+ (build_tree): Oops, turn on BROKEN_ETREE again.
* mail-mt.c (mail_get_password): If we are being called from the
main gui thread, then just call the dialogue directly. Ideally we
diff --git a/mail/message-list.c b/mail/message-list.c
index 69ca413314..6b43964477 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -1460,8 +1460,6 @@ static void build_subtree (MessageList *ml, ETreePath *parent, CamelFolderThread
static void build_subtree_diff (MessageList *ml, ETreePath *parent, ETreePath *path, CamelFolderThreadNode *c, int *row, GHashTable *expanded_nodes);
-static int tree_equal(ETreeModel *etm, ETreePath *ap, CamelFolderThreadNode *bp);
-
static void
build_tree (MessageList *ml, CamelFolderThread *thread, CamelFolderChangeInfo *changes)
{
@@ -1491,7 +1489,7 @@ build_tree (MessageList *ml, CamelFolderThread *thread, CamelFolderChangeInfo *c
e_tree_model_node_set_expanded(etm, ml->tree_root, TRUE);
}
-/*#define BROKEN_ETREE*/ /* avoid some broken code in etree(?) by not using the incremental update */
+#define BROKEN_ETREE /* avoid some broken code in etree(?) by not using the incremental update */
top = e_tree_model_node_get_first_child(etm, ml->tree_root);
#ifndef BROKEN_ETREE
@@ -1503,6 +1501,8 @@ build_tree (MessageList *ml, CamelFolderThread *thread, CamelFolderChangeInfo *c
e_tree_model_thaw(etm);
#ifndef BROKEN_ETREE
} else {
+ static int tree_equal(ETreeModel *etm, ETreePath *ap, CamelFolderThreadNode *bp);
+
build_subtree_diff(ml, ml->tree_root, top, thread->tree, &row, expanded_nodes);
top = e_tree_model_node_get_first_child(etm, ml->tree_root);
tree_equal(ml->table_model, top, thread->tree);
@@ -1605,6 +1605,7 @@ node_equal(ETreeModel *etm, ETreePath *ap, CamelFolderThreadNode *bp)
return 0;
}
+#ifndef BROKEN_ETREE
/* debug function - compare the two trees to see if they are the same */
static int
tree_equal(ETreeModel *etm, ETreePath *ap, CamelFolderThreadNode *bp)
@@ -1655,6 +1656,7 @@ tree_equal(ETreeModel *etm, ETreePath *ap, CamelFolderThreadNode *bp)
}
return TRUE;
}
+#endif
/* adds a single node, retains save state, and handles adding children if required */
static void