dovecot-2.0: dsync: Fixed brain unit test not to crash at deinit.
dovecot at dovecot.org
dovecot at dovecot.org
Sun Jul 11 20:38:00 EEST 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/fd33ccbf235e
changeset: 11786:fd33ccbf235e
user: Timo Sirainen <tss at iki.fi>
date: Sun Jul 11 18:32:43 2010 +0100
description:
dsync: Fixed brain unit test not to crash at deinit.
diffstat:
src/dsync/dsync-brain.c | 2 +-
src/dsync/dsync-brain.h | 4 +++-
src/dsync/dsync.c | 4 ++--
src/dsync/test-dsync-brain.c | 6 ++++--
4 files changed, 10 insertions(+), 6 deletions(-)
diffs (63 lines):
diff -r d2b09976c704 -r fd33ccbf235e src/dsync/dsync-brain.c
--- a/src/dsync/dsync-brain.c Sun Jul 11 13:25:38 2010 +0100
+++ b/src/dsync/dsync-brain.c Sun Jul 11 18:32:43 2010 +0100
@@ -785,7 +785,7 @@
dsync_brain_fail(brain);
brain->state++;
- if (brain->to == NULL)
+ if (brain->to == NULL && (brain->flags & DSYNC_BRAIN_FLAG_LOCAL) == 0)
brain->to = timeout_add(0, dsync_brain_sync, brain);
}
diff -r d2b09976c704 -r fd33ccbf235e src/dsync/dsync-brain.h
--- a/src/dsync/dsync-brain.h Sun Jul 11 13:25:38 2010 +0100
+++ b/src/dsync/dsync-brain.h Sun Jul 11 18:32:43 2010 +0100
@@ -6,7 +6,9 @@
DSYNC_BRAIN_FLAG_VERBOSE = 0x02,
/* Run in backup mode. All changes from src are forced into dest,
discarding any potential changes in dest. */
- DSYNC_BRAIN_FLAG_BACKUP = 0x04
+ DSYNC_BRAIN_FLAG_BACKUP = 0x04,
+ /* Run in "local mode". Don't use ioloop. */
+ DSYNC_BRAIN_FLAG_LOCAL = 0x08
};
struct dsync_worker;
diff -r d2b09976c704 -r fd33ccbf235e src/dsync/dsync.c
--- a/src/dsync/dsync.c Sun Jul 11 13:25:38 2010 +0100
+++ b/src/dsync/dsync.c Sun Jul 11 18:32:43 2010 +0100
@@ -283,8 +283,8 @@
}
i_set_failure_prefix(t_strdup_printf("dsync(%s): ", username));
- brain = dsync_brain_init(worker1, worker2,
- mailbox, brain_flags);
+ brain = dsync_brain_init(worker1, worker2, mailbox,
+ brain_flags | DSYNC_BRAIN_FLAG_LOCAL);
server = NULL;
dsync_brain_sync_all(brain);
} else if (dsync_server) {
diff -r d2b09976c704 -r fd33ccbf235e src/dsync/test-dsync-brain.c
--- a/src/dsync/test-dsync-brain.c Sun Jul 11 13:25:38 2010 +0100
+++ b/src/dsync/test-dsync-brain.c Sun Jul 11 18:32:43 2010 +0100
@@ -150,7 +150,8 @@
src_test_worker = (struct test_dsync_worker *)src_worker;
dest_test_worker = (struct test_dsync_worker *)dest_worker;
- brain = dsync_brain_init(src_worker, dest_worker, NULL, 0);
+ brain = dsync_brain_init(src_worker, dest_worker, NULL,
+ DSYNC_BRAIN_FLAG_LOCAL);
dsync_brain_sync(brain);
/* have brain read the mailboxes */
@@ -240,7 +241,8 @@
dest_test_worker = (struct test_dsync_worker *)dest_worker;
brain = dsync_brain_init(src_worker, dest_worker, NULL,
- DSYNC_BRAIN_FLAG_FULL_SYNC);
+ DSYNC_BRAIN_FLAG_FULL_SYNC |
+ DSYNC_BRAIN_FLAG_LOCAL);
dsync_brain_sync(brain);
/* have brain read the mailboxes */
More information about the dovecot-cvs
mailing list