[dovecot-cvs] dovecot/src/lib-index mail-transaction-log.c, 1.25,
1.26
cras at procontrol.fi
cras at procontrol.fi
Mon May 17 02:06:36 EEST 2004
- Previous message: [dovecot-cvs] dovecot/src/lib-index mail-index-lock.c, 1.13,
1.14 mail-index-view.c, 1.7, 1.8 mail-index.c, 1.120, 1.121
- Next message: [dovecot-cvs] dovecot/src/imap cmd-sort.c, 1.14, 1.15 cmd-thread.c,
1.6, 1.7 imap-sort.c, 1.10, 1.11 imap-thread.c, 1.8, 1.9
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /home/cvs/dovecot/src/lib-index
In directory talvi:/tmp/cvs-serv1785
Modified Files:
mail-transaction-log.c
Log Message:
fixes
Index: mail-transaction-log.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib-index/mail-transaction-log.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- mail-transaction-log.c 16 May 2004 01:28:42 -0000 1.25
+++ mail-transaction-log.c 16 May 2004 23:06:34 -0000 1.26
@@ -914,20 +914,28 @@
if (!two)
continue;
- if (exp->seq2 >= seq[1])
+ exp2 = exp;
+ count = 0;
+ do {
+ /* we point to next non-expunged message */
+ seq[0] = exp2->seq2 + 1;
+ count += exp->seq2 - exp->seq1 + 1;
+ exp2++;
+ } while (exp2 != exp_end && exp2->seq1 == seq[0]);
+
+ if (seq[0] > seq[1] ||
+ seq[0] > view->map->records_count) {
+ /* it's all expunged */
continue;
+ }
- /* we point to next non-expunged message */
- seq[0] = exp->seq2 + 1;
if (uids) {
/* get new first UID */
ret = mail_index_lookup_uid(view, seq[0],
&seq[2]);
i_assert(ret == 0);
}
-
- expunges_before += exp->seq2 - exp->seq1 + 1;
- exp++;
+ seq[0] -= count;
}
seq[0] -= expunges_before;
- Previous message: [dovecot-cvs] dovecot/src/lib-index mail-index-lock.c, 1.13,
1.14 mail-index-view.c, 1.7, 1.8 mail-index.c, 1.120, 1.121
- Next message: [dovecot-cvs] dovecot/src/imap cmd-sort.c, 1.14, 1.15 cmd-thread.c,
1.6, 1.7 imap-sort.c, 1.10, 1.11 imap-thread.c, 1.8, 1.9
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the dovecot-cvs
mailing list