]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-index: Cleanup - return bool in log_append_keyword_updates()
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Thu, 8 Feb 2018 14:50:58 +0000 (16:50 +0200)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Tue, 13 Feb 2018 12:33:12 +0000 (14:33 +0200)
Simplifies the next commit.

src/lib-index/mail-index-transaction-export.c

index 9afa8b93c5edd70f9275715e9148b07d70901dfb..a3d29e807c6a832828240544a3c57680e977af30 100644 (file)
@@ -375,14 +375,14 @@ log_append_keyword_update(struct mail_index_export_context *ctx,
        log_append_buffer(ctx, tmp_buf, MAIL_TRANSACTION_KEYWORD_UPDATE);
 }
 
-static enum mail_index_fsync_mask
+static bool
 log_append_keyword_updates(struct mail_index_export_context *ctx)
 {
         const struct mail_index_transaction_keyword_update *updates;
        const char *const *keywords;
        buffer_t *tmp_buf;
-       enum mail_index_fsync_mask change_mask = 0;
        unsigned int i, count, keywords_count;
+       bool changed = FALSE;
 
        tmp_buf = t_buffer_create(64);
 
@@ -394,20 +394,20 @@ log_append_keyword_updates(struct mail_index_export_context *ctx)
        for (i = 0; i < count; i++) {
                if (array_is_created(&updates[i].add_seq) &&
                    array_count(&updates[i].add_seq) > 0) {
-                       change_mask |= MAIL_INDEX_FSYNC_MASK_KEYWORDS;
+                       changed = TRUE;
                        log_append_keyword_update(ctx, tmp_buf,
                                        MODIFY_ADD, keywords[i],
                                        updates[i].add_seq.arr.buffer);
                }
                if (array_is_created(&updates[i].remove_seq) &&
                    array_count(&updates[i].remove_seq) > 0) {
-                       change_mask |= MAIL_INDEX_FSYNC_MASK_KEYWORDS;
+                       changed = TRUE;
                        log_append_keyword_update(ctx, tmp_buf,
                                        MODIFY_REMOVE, keywords[i],
                                        updates[i].remove_seq.arr.buffer);
                }
        }
-       return change_mask;
+       return changed;
 }
 
 void mail_index_transaction_export(struct mail_index_transaction *t,
@@ -470,8 +470,10 @@ void mail_index_transaction_export(struct mail_index_transaction *t,
                                    MAIL_TRANSACTION_EXT_ATOMIC_INC);
        }
 
-       if (array_is_created(&t->keyword_updates))
-               change_mask |= log_append_keyword_updates(&ctx);
+       if (array_is_created(&t->keyword_updates)) {
+               if (log_append_keyword_updates(&ctx))
+                       change_mask |= MAIL_INDEX_FSYNC_MASK_KEYWORDS;
+       }
        /* keep modseq updates almost last */
        if (array_is_created(&t->modseq_updates)) {
                log_append_buffer(&ctx, t->modseq_updates.arr.buffer,