aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers
diff options
context:
space:
mode:
Diffstat (limited to 'camel/providers')
-rw-r--r--camel/providers/imap4/camel-imap4-store.c30
-rw-r--r--camel/providers/imap4/camel-imap4-utils.c3
2 files changed, 16 insertions, 17 deletions
diff --git a/camel/providers/imap4/camel-imap4-store.c b/camel/providers/imap4/camel-imap4-store.c
index 37c203479e..adf8ffbbe4 100644
--- a/camel/providers/imap4/camel-imap4-store.c
+++ b/camel/providers/imap4/camel-imap4-store.c
@@ -592,26 +592,26 @@ static char *
imap4_folder_utf7_name (CamelStore *store, const char *folder_name, char wildcard)
{
char *real_name, *p;
- char sep;
+ char sep = '\0';
int len;
- sep = camel_imap4_get_path_delim (((CamelIMAP4Store *) store)->summary, folder_name);
-
- if (sep != '/') {
- p = real_name = g_alloca (strlen (folder_name) + 1);
- strcpy (real_name, folder_name);
- while (*p != '\0') {
- if (*p == '/')
- *p = sep;
- p++;
+ if (*folder_name) {
+ sep = camel_imap4_get_path_delim (((CamelIMAP4Store *) store)->summary, folder_name);
+
+ if (sep != '/') {
+ p = real_name = g_alloca (strlen (folder_name) + 1);
+ strcpy (real_name, folder_name);
+ while (*p != '\0') {
+ if (*p == '/')
+ *p = sep;
+ p++;
+ }
+
+ folder_name = real_name;
}
- folder_name = real_name;
- }
-
- if (*folder_name)
real_name = camel_utf8_utf7 (folder_name);
- else
+ } else
real_name = g_strdup ("");
if (wildcard) {
diff --git a/camel/providers/imap4/camel-imap4-utils.c b/camel/providers/imap4/camel-imap4-utils.c
index c95438e95a..29ffb945fe 100644
--- a/camel/providers/imap4/camel-imap4-utils.c
+++ b/camel/providers/imap4/camel-imap4-utils.c
@@ -144,8 +144,7 @@ camel_imap4_get_path_delim (CamelIMAP4StoreSummary *s, const char *full_name)
size_t len;
char *top;
- if (s->namespaces == NULL)
- return '/';
+ g_return_val_if_fail (s->namespaces != NULL, '/');
if ((slash = strchr (full_name, '/')))
len = (slash - full_name);