dovecot-2.1: doveadm altmove: Make sure all storages get purged ...

dovecot at dovecot.org dovecot at dovecot.org
Thu Sep 27 02:55:32 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.1/rev/4819306a1f9f
changeset: 14736:4819306a1f9f
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Sep 27 00:19:41 2012 +0300
description:
doveadm altmove: Make sure all storages get purged (and not more than once)

diffstat:

 src/doveadm/doveadm-mail-altmove.c |  7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diffs (24 lines):

diff -r 9dcc44d8275d -r 4819306a1f9f src/doveadm/doveadm-mail-altmove.c
--- a/src/doveadm/doveadm-mail-altmove.c	Wed Sep 26 21:14:23 2012 +0300
+++ b/src/doveadm/doveadm-mail-altmove.c	Thu Sep 27 00:19:41 2012 +0300
@@ -87,6 +87,12 @@
 	if (doveadm_mailbox_list_iter_deinit(&iter) < 0)
 		ret = -1;
 
+	if (prev_ns != NULL) {
+		if (ns_purge(_ctx, prev_ns) < 0)
+			ret = -1;
+		array_append(&purged_storages, &prev_ns->storage, 1);
+	}
+
 	/* make sure all private storages have been purged */
 	storages = array_get(&purged_storages, &count);
 	for (ns = user->namespaces; ns != NULL; ns = ns->next) {
@@ -101,6 +107,7 @@
 			if (ns_purge(_ctx, ns) < 0)
 				ret = -1;
 			array_append(&purged_storages, &ns->storage, 1);
+			storages = array_get(&purged_storages, &count);
 		}
 	}
 	return ret;


More information about the dovecot-cvs mailing list