+2007-01-16 [colin] 2.7.1cvs5
+
+ * src/imap.c
+ Never remove INBOX when scanning for
+ new folders. It's a special folder
+ that has to exist.
+
2007-01-15 [colin] 2.7.1cvs4
* src/imap.c
( cvs diff -u -r 1.16.2.9 -r 1.16.2.10 src/matcher_parser_lex.l; cvs diff -u -r 1.8.2.6 -r 1.8.2.7 src/quote_fmt_lex.l; cvs diff -u -r 1.25.2.19 -r 1.25.2.20 src/matcher_parser_parse.y; ) > 2.7.1cvs2.patchset
( cvs diff -u -r 1.1.4.68 -r 1.1.4.69 src/etpan/imap-thread.c; ) > 2.7.1cvs3.patchset
( cvs diff -u -r 1.179.2.148 -r 1.179.2.149 src/imap.c; cvs diff -u -r 1.1.4.69 -r 1.1.4.70 src/etpan/imap-thread.c; ) > 2.7.1cvs4.patchset
+( cvs diff -u -r 1.179.2.149 -r 1.179.2.150 src/imap.c; ) > 2.7.1cvs5.patchset
if (folder->node)
item = FOLDER_ITEM(folder->node->data);
+
if (item && !item->path && root_folder) {
item->path = g_strdup(root_folder);
}
+
if (!item || ((item->path || root_folder) &&
strcmp2(item->path, root_folder) != 0)) {
folder_tree_destroy(folder);
}
}
if (!new_item) {
- debug_print("folder '%s' not found. removing...\n",
- old_item->path);
- folder_item_remove(old_item);
+ if (old_item && old_item->path && !strcmp(old_item->path, "INBOX")) {
+ debug_print("not removing INBOX\n");
+ } else {
+ debug_print("folder '%s' not found. removing...\n",
+ old_item->path);
+ folder_item_remove(old_item);
+ }
} else {
old_item->no_sub = new_item->no_sub;
old_item->no_select = new_item->no_select;