]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: mailbox_get_expunges() didn't return any expunges if modseq was too...
authorTimo Sirainen <tss@iki.fi>
Sun, 11 Jul 2010 17:56:39 +0000 (18:56 +0100)
committerTimo Sirainen <tss@iki.fi>
Sun, 11 Jul 2010 17:56:39 +0000 (18:56 +0100)
This fixes problems with dsync creating back expunged messages.

src/lib-storage/index/index-fetch.c

index 9191477975d7d038f8c9d68c34468b5136efebb2..55ec33630f2a6ab79ad48fc87d8c357a37c46adf 100644 (file)
@@ -88,8 +88,10 @@ bool index_storage_get_expunges(struct mailbox *box, uint64_t prev_modseq,
        int ret;
 
        if (!mail_index_modseq_get_next_log_offset(box->view, prev_modseq,
-                                                  &log_seq, &log_offset))
-               return FALSE;
+                                                  &log_seq, &log_offset)) {
+               log_seq = 1;
+               log_offset = 0;
+       }
        if (log_seq > box->view->log_file_head_seq ||
            (log_seq == box->view->log_file_head_seq &&
             log_offset >= box->view->log_file_head_offset)) {