]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dsync: If msg iteration fails, don't crash.
authorTimo Sirainen <tss@iki.fi>
Mon, 5 Jul 2010 11:34:11 +0000 (12:34 +0100)
committerTimo Sirainen <tss@iki.fi>
Mon, 5 Jul 2010 11:34:11 +0000 (12:34 +0100)
--HG--
branch : HEAD

src/dsync/dsync-brain-msgs.c

index 61247e55a264c3e54a7df8ebacada899e2f9d698..7de820b3e57881876808a7bcfd9f02a5a65cabb1 100644 (file)
@@ -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);