# HG changeset patch # User Timo Sirainen # Date 1192975155 -10800 # Node ID 952540aef4855511d9790670aa895e0dcff29d35 # Parent 2bd0aaeb35f3f38451e86cf59d0cd2c39cba90e3 If control dir isn't the same as root dir, we created .box/.box/ directory instead of just .box/. diff -r 2bd0aaeb35f3 -r 952540aef485 src/lib-storage/index/maildir/maildir-storage.c --- a/src/lib-storage/index/maildir/maildir-storage.c Sun Oct 21 16:51:15 2007 +0300 +++ b/src/lib-storage/index/maildir/maildir-storage.c Sun Oct 21 16:59:15 2007 +0300 @@ -348,7 +348,7 @@ static int create_control_dir(struct mail_storage *storage, const char *name) { - const char *control_dir, *root_dir, *dir; + const char *control_dir, *root_dir; control_dir = mailbox_list_get_path(storage->list, name, MAILBOX_LIST_PATH_TYPE_CONTROL); @@ -357,12 +357,9 @@ if (strcmp(control_dir, root_dir) == 0) return 0; - dir = t_strdup_printf("%s/%c%s", control_dir, - mailbox_list_get_hierarchy_sep(storage->list), - name); - if (mkdir_parents(dir, CREATE_MODE) < 0 && errno != EEXIST) { + if (mkdir_parents(control_dir, CREATE_MODE) < 0 && errno != EEXIST) { mail_storage_set_critical(storage, - "mkdir(%s) failed: %m", dir); + "mkdir(%s) failed: %m", control_dir); return -1; }