aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/ChangeLog3
-rw-r--r--camel/providers/imap/camel-imap-folder.c6
-rw-r--r--camel/providers/imap/camel-imap-utils.c11
3 files changed, 13 insertions, 7 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 197b167c39..70abe69566 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,5 +1,8 @@
2000-08-03 Jeffrey Stedfast <fejj@helixcode.com>
+ * providers/imap/camel-imap-folder.c (camel_imap_folder_new): Only
+ call imap_get_summary_internal if the folder can hold messages
+
* providers/nntp/camel-nntp-provider.c (camel_provider_module_init):
Initialize the service_cache for the news/nntp providers
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c
index e6f051a75a..ca99da671c 100644
--- a/camel/providers/imap/camel-imap-folder.c
+++ b/camel/providers/imap/camel-imap-folder.c
@@ -192,8 +192,10 @@ camel_imap_folder_new (CamelStore *parent, char *folder_name, CamelException *ex
folder->can_hold_messages = FALSE;
imap_get_subfolder_names_internal (folder, ex);
- imap_get_summary_internal (folder, ex);
-
+
+ if (folder->can_hold_messages)
+ imap_get_summary_internal (folder, ex);
+
return folder;
}
diff --git a/camel/providers/imap/camel-imap-utils.c b/camel/providers/imap/camel-imap-utils.c
index 648201891b..c440d6c165 100644
--- a/camel/providers/imap/camel-imap-utils.c
+++ b/camel/providers/imap/camel-imap-utils.c
@@ -428,19 +428,20 @@ stresexptree (ESExpTerm *node)
if (str) {
if (r_str) {
if (l_str)
- node_str = g_strdup_printf ("(%s (%s)) %s", str, r_str, l_str);
+ node_str = g_strdup_printf ("%s %s %s", str, r_str, l_str);
else
- node_str = g_strdup_printf ("(%s %s)", str, r_str);
+ node_str = g_strdup_printf ("%s %s", str, r_str);
} else {
if (l_str)
- node_str = g_strdup_printf ("(%s) %s", str, l_str);
+ node_str = g_strdup_printf ("%s %s", str, l_str);
else
- node_str = g_strdup_printf ("(%s)", str);
+ node_str = g_strdup_printf ("%s", str);
}
} else {
+
if (r_str) {
if (l_str)
- node_str = g_strdup_printf ("(%s) %s", r_str, l_str);
+ node_str = g_strdup_printf ("%s %s", r_str, l_str);
else
node_str = g_strdup_printf ("%s", r_str);
} else {