aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog3
-rw-r--r--mail/em-folder-tree.c29
2 files changed, 28 insertions, 4 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index fe076e77ca..b2733b5314 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,5 +1,8 @@
2003-11-17 Jeffrey Stedfast <fejj@ximian.com>
+ * em-folder-tree.c (tree_row_expanded): Fixed to check fi->child
+ as well (since mbox does it right).
+
* em-folder-selection-button.c (set_contents): Fixed to not
include leading '/' in the folder name in the label.
diff --git a/mail/em-folder-tree.c b/mail/em-folder-tree.c
index 553fef0fa9..6adf2f18d1 100644
--- a/mail/em-folder-tree.c
+++ b/mail/em-folder-tree.c
@@ -914,6 +914,26 @@ tree_store_set_folder_info (GtkTreeStore *model, GtkTreeIter *iter,
}
}
+#if 0
+static void
+dump_fi (CamelFolderInfo *fi, int depth)
+{
+ int i;
+
+ while (fi != NULL) {
+ for (i = 0; i < depth; i++)
+ fputs (" ", stdout);
+
+ printf ("path='%s'; full_name='%s'\n", fi->path, fi->full_name);
+
+ if (fi->child)
+ dump_fi (fi->child, depth + 1);
+
+ fi = fi->sibling;
+ }
+}
+#endif
+
static void
tree_row_expanded (GtkTreeView *treeview, GtkTreeIter *root, GtkTreePath *tree_path, EMFolderTree *emft)
{
@@ -965,11 +985,12 @@ tree_row_expanded (GtkTreeView *treeview, GtkTreeIter *root, GtkTreePath *tree_p
}
/* FIXME: camel is totally on crack here, @top's folder info
- * should be @fi and fi->childs should be what we want to fill
+ * should be @fi and fi->child should be what we want to fill
* our tree with... *sigh* */
- if (!strcmp (fi->path, path))
- child = fi->sibling;
- else
+ if (top && !strcmp (fi->full_name, top)) {
+ if (!(child = fi->child))
+ child = fi->sibling;
+ } else
child = fi;
if (child == NULL) {