aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog7
-rw-r--r--camel/camel-store.c17
-rw-r--r--camel/providers/imap/camel-imap-store.c2
3 files changed, 11 insertions, 15 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 4c3c8045e0..1d77f1341e 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,10 @@
+2002-09-30 Jeffrey Stedfast <fejj@ximian.com>
+
+ * camel-store.c (camel_folder_info_build): Don't strip the
+ namespace from the fi->full_name when hasing or creating fake
+ parent folders. Fixes a bug I found while trying to reproduce bug
+ #31456.
+
2002-09-30 Not Zed <NotZed@Ximian.com>
* providers/imap/camel-imap-folder.c (imap_get_message): Remove
diff --git a/camel/camel-store.c b/camel/camel-store.c
index 1987ea4ddd..f7ae7cba78 100644
--- a/camel/camel-store.c
+++ b/camel/camel-store.c
@@ -874,25 +874,14 @@ camel_folder_info_build (GPtrArray *folders, const char *namespace,
hash = g_hash_table_new (g_str_hash, g_str_equal);
for (i = 0; i < folders->len; i++) {
fi = folders->pdata[i];
- if (!strncmp (namespace, fi->full_name, nlen))
- name = fi->full_name + nlen;
- else
- name = fi->full_name;
- if (*name == separator)
- name++;
- g_hash_table_insert (hash, name, fi);
+ g_hash_table_insert (hash, fi->full_name, fi);
}
/* Now find parents. */
for (i = 0; i < folders->len; i++) {
fi = folders->pdata[i];
- if (!strncmp (namespace, fi->full_name, nlen))
- name = fi->full_name + nlen;
- else
- name = fi->full_name;
- if (*name == separator)
- name++;
-
+ name = fi->full_name;
+
/* set the path if it isn't already set */
if (!fi->path)
camel_folder_info_build_path (fi, separator);
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index f854d78a11..215f15f279 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -911,7 +911,7 @@ imap_forget_folder (CamelImapStore *imap_store, const char *folder_name, CamelEx
unlink (summary_file);
g_free (summary_file);
-
+
journal_file = g_strdup_printf ("%s/summary", folder_dir);
unlink (journal_file);
g_free (journal_file);