From: Timo Sirainen Date: Mon, 5 Jul 2010 11:34:11 +0000 (+0100) Subject: dsync: If msg iteration fails, don't crash. X-Git-Tag: 2.0.rc2~42 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d9c3d6f853d4a1f5cbb217d212465e8fc02e80c5;p=thirdparty%2Fdovecot%2Fcore.git dsync: If msg iteration fails, don't crash. --HG-- branch : HEAD --- diff --git a/src/dsync/dsync-brain-msgs.c b/src/dsync/dsync-brain-msgs.c index 61247e55a2..7de820b3e5 100644 --- a/src/dsync/dsync-brain-msgs.c +++ b/src/dsync/dsync-brain-msgs.c @@ -408,6 +408,11 @@ void dsync_brain_msg_sync_more(struct dsync_brain_mailbox_sync *sync) } /* finished with all mailboxes. */ + dsync_worker_set_input_callback(sync->src_msg_iter->worker, NULL, NULL); + dsync_worker_set_output_callback(sync->src_msg_iter->worker, NULL, NULL); + dsync_worker_set_input_callback(sync->dest_msg_iter->worker, NULL, NULL); + dsync_worker_set_output_callback(sync->dest_msg_iter->worker, NULL, NULL); + if (dsync_worker_msg_iter_deinit(&sync->src_msg_iter->iter) < 0 || dsync_worker_msg_iter_deinit(&sync->dest_msg_iter->iter) < 0) { dsync_brain_fail(sync->brain);