summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-03-27 05:21:47 +0000
committerDan Winship <danw@src.gnome.org>2001-03-27 05:21:47 +0000
commit15e61e9437d5e49a8bc4b1d63a5cebe466b89fdc (patch)
treef13f190f4c68ca36d5801f8ae1d937a03c6198ef
parent8eb320a2df7fc776524ce36898245b05bf343639 (diff)
downloadevolution-data-server-15e61e9437d5e49a8bc4b1d63a5cebe466b89fdc.tar.gz
Rewrite to use imap_store->namespace, not service->url->path
* providers/imap/camel-imap-folder.c (imap_get_full_name): Rewrite to use imap_store->namespace, not service->url->path
-rw-r--r--camel/providers/imap/camel-imap-folder.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/camel/providers/imap/camel-imap-folder.c b/camel/providers/imap/camel-imap-folder.c
index 2b9bfb7b7..84df6c032 100644
--- a/camel/providers/imap/camel-imap-folder.c
+++ b/camel/providers/imap/camel-imap-folder.c
@@ -607,16 +607,20 @@ imap_expunge (CamelFolder *folder, CamelException *ex)
static const char *
imap_get_full_name (CamelFolder *folder)
{
- CamelURL *url = ((CamelService *)folder->parent_store)->url;
+ CamelImapStore *store = CAMEL_IMAP_STORE (folder->parent_store);
+ char *name;
int len;
- if (!url->path || !*url->path || !strcmp (url->path, "/"))
- return folder->full_name;
- len = strlen (url->path + 1);
- if (!strncmp (url->path + 1, folder->full_name, len) &&
- strlen (folder->full_name) > len + 1)
- return folder->full_name + len + 1;
- return folder->full_name;
+ name = folder->full_name;
+ if (store->namespace && *store->namespace) {
+ len = strlen (store->namespace);
+ if (!strncmp (store->namespace, folder->full_name, len) &&
+ strlen (folder->full_name) > len)
+ name += len;
+ if (*name == store->dir_sep)
+ name++;
+ }
+ return name;
}
static void