Mercurial > dovecot > core-2.2
changeset 22873:61143106dee6
doveadm sync/backup: Don't override BROKENCHAR if it's already set
This allows migrating invalid mailbox names by specifying BROKENCHAR.
Previously it would always try to use \003 control character, which isn't
valid character in mailbox names so the mailbox creation would fail.
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Fri, 16 Feb 2018 16:03:46 +0200 |
parents | b47c291ae2af |
children | caa0b245c353 |
files | src/doveadm/doveadm-dsync.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/doveadm/doveadm-dsync.c Mon Feb 26 18:20:30 2018 +0200 +++ b/src/doveadm/doveadm-dsync.c Fri Feb 16 16:03:46 2018 +0200 @@ -323,8 +323,10 @@ struct mail_namespace *ns; user->dsyncing = TRUE; - for (ns = user->namespaces; ns != NULL; ns = ns->next) - ns->list->set.broken_char = DSYNC_LIST_BROKEN_CHAR; + for (ns = user->namespaces; ns != NULL; ns = ns->next) { + if (ns->list->set.broken_char == '\0') + ns->list->set.broken_char = DSYNC_LIST_BROKEN_CHAR; + } } static bool paths_are_equal(struct mail_user *user1, struct mail_user *user2,