aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers
diff options
context:
space:
mode:
Diffstat (limited to 'camel/providers')
-rw-r--r--camel/providers/local/camel-mbox-folder.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/camel/providers/local/camel-mbox-folder.c b/camel/providers/local/camel-mbox-folder.c
index 159ae353d7..3d8b040519 100644
--- a/camel/providers/local/camel-mbox-folder.c
+++ b/camel/providers/local/camel-mbox-folder.c
@@ -162,18 +162,23 @@ camel_mbox_folder_get_full_path (const char *toplevel_dir, const char *full_name
path = g_malloc (strlen (toplevel_dir) + (inptr - full_name) + (4 * subdirs) + 1);
p = g_stpcpy (path, toplevel_dir);
- inptr = full_name;
- while (*inptr != '\0') {
- while (*inptr != '/' && *inptr != '\0')
- *p++ = *inptr++;
-
- if (*inptr == '/') {
- p = g_stpcpy (p, ".sbd/");
- inptr++;
+ if (strcmp (toplevel_dir, "/") == 0) {
+ /* FIXME: temporary hack until we merge new-ui-branch into trunk */
+ p = g_stpcpy (p, full_name);
+ } else {
+ inptr = full_name;
+ while (*inptr != '\0') {
+ while (*inptr != '/' && *inptr != '\0')
+ *p++ = *inptr++;
- /* strip extranaeous '/'s */
- while (*inptr == '/')
+ if (*inptr == '/') {
+ p = g_stpcpy (p, ".sbd/");
inptr++;
+
+ /* strip extranaeous '/'s */
+ while (*inptr == '/')
+ inptr++;
+ }
}
}