}
static int
-maildir_list_delete_mailbox(struct mailbox_list *list, const char *name)
+maildir_list_delete_maildir(struct mailbox_list *list, const char *name)
{
const char *path, *trash_dir;
int ret = 0;
- if ((list->flags & MAILBOX_LIST_FLAG_MAILBOX_FILES) != 0) {
- if (mailbox_list_delete_mailbox_file(list, name) < 0)
- return -1;
- ret = 1;
- }
-
trash_dir = mailbox_list_maildir_get_trash_dir(list);
ret = mailbox_list_delete_maildir_via_trash(list, name, trash_dir);
if (ret < 0)
path, TRUE) < 0)
return -1;
}
+ return 0;
+}
+
+static int
+maildir_list_delete_mailbox(struct mailbox_list *list, const char *name)
+{
+ if ((list->flags & MAILBOX_LIST_FLAG_MAILBOX_FILES) != 0) {
+ if (mailbox_list_delete_mailbox_file(list, name) < 0)
+ return -1;
+ } else {
+ if (maildir_list_delete_maildir(list, name) < 0)
+ return -1;
+ }
mailbox_list_delete_finish(list, name);
return 0;