dovecot: When sorting appends, sort also keyword resets.
dovecot at dovecot.org
dovecot at dovecot.org
Sat Sep 22 13:55:42 EEST 2007
details: http://hg.dovecot.org/dovecot/rev/ed433a2a5f3d
changeset: 6447:ed433a2a5f3d
user: Timo Sirainen <tss at iki.fi>
date: Sat Sep 22 12:31:52 2007 +0300
description:
When sorting appends, sort also keyword resets.
diffstat:
1 file changed, 18 insertions(+), 14 deletions(-)
src/lib-index/mail-index-transaction.c | 32 ++++++++++++++++++--------------
diffs (42 lines):
diff -r 0a44101371a4 -r ed433a2a5f3d src/lib-index/mail-index-transaction.c
--- a/src/lib-index/mail-index-transaction.c Sat Sep 22 12:28:03 2007 +0300
+++ b/src/lib-index/mail-index-transaction.c Sat Sep 22 12:31:52 2007 +0300
@@ -416,20 +416,24 @@ mail_index_transaction_sort_appends_keyw
struct mail_index_transaction_keyword_update *updates;
unsigned int i, count;
- /* fix the order in keywords */
- if (!array_is_created(&t->keyword_updates))
- return;
-
- updates = array_get_modifiable(&t->keyword_updates, &count);
- for (i = 0; i < count; i++) {
- if (array_is_created(&updates->add_seq)) {
- sort_appends_seq_range(t, &updates[i].add_seq,
- old_to_newseq_map);
- }
- if (array_is_created(&updates->remove_seq)) {
- sort_appends_seq_range(t, &updates[i].remove_seq,
- old_to_newseq_map);
- }
+ if (array_is_created(&t->keyword_updates)) {
+ updates = array_get_modifiable(&t->keyword_updates, &count);
+ for (i = 0; i < count; i++) {
+ if (array_is_created(&updates->add_seq)) {
+ sort_appends_seq_range(t, &updates[i].add_seq,
+ old_to_newseq_map);
+ }
+ if (array_is_created(&updates->remove_seq)) {
+ sort_appends_seq_range(t,
+ &updates[i].remove_seq,
+ old_to_newseq_map);
+ }
+ }
+ }
+
+ if (array_is_created(&t->keyword_resets)) {
+ sort_appends_seq_range(t, &t->keyword_resets,
+ old_to_newseq_map);
}
}
More information about the dovecot-cvs
mailing list