diff options
Diffstat (limited to 'camel/providers/imap/camel-imap-utils.c')
-rw-r--r-- | camel/providers/imap/camel-imap-utils.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/camel/providers/imap/camel-imap-utils.c b/camel/providers/imap/camel-imap-utils.c index a449ea228d..df8ddc4f0e 100644 --- a/camel/providers/imap/camel-imap-utils.c +++ b/camel/providers/imap/camel-imap-utils.c @@ -773,11 +773,20 @@ imap_concat (CamelImapStore *imap_store, const char *prefix, const char *suffix) char * imap_namespace_concat (CamelImapStore *store, const char *name) { - if (!name || *name == '\0') - return g_strdup (store->namespace); - + if (!name || *name == '\0') { + if (store->namespace) + return g_strdup (store->namespace); + else + return g_strdup (""); + } + if (!g_strcasecmp (name, "INBOX")) return g_strdup ("INBOX"); + if (store->namespace == NULL) { + g_warning ("Trying to concat NULL namespace to \"%s\"!", name); + return g_strdup (name); + } + return imap_concat (store, store->namespace, name); } |