From: Timo Sirainen Date: Mon, 23 Jan 2023 18:55:14 +0000 (+0200) Subject: global: Don't use ENUM_NEGATE() with non-enum variables X-Git-Tag: 2.4.0~3169 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9fde713bf1fddc7d748eefd6e930ab30097622cd;p=thirdparty%2Fdovecot%2Fcore.git global: Don't use ENUM_NEGATE() with non-enum variables Fixes compiler warnings. --- diff --git a/src/doveadm/dsync/dsync-transaction-log-scan.c b/src/doveadm/dsync/dsync-transaction-log-scan.c index 428d59c716..9e0bfe0a6f 100644 --- a/src/doveadm/dsync/dsync-transaction-log-scan.c +++ b/src/doveadm/dsync/dsync-transaction-log-scan.c @@ -179,9 +179,9 @@ log_add_flag_update(struct dsync_transaction_log_scan *ctx, const void *data, DSYNC_MAIL_CHANGE_TYPE_FLAG_CHANGE, &change)) { change->add_flags |= rec->add_flags; - change->remove_flags &= ENUM_NEGATE(rec->add_flags); + change->remove_flags &= ~rec->add_flags; change->remove_flags |= rec->remove_flags; - change->add_flags &= ENUM_NEGATE(rec->remove_flags); + change->add_flags &= ~rec->remove_flags; } } } diff --git a/src/lib-index/mail-index-sync.c b/src/lib-index/mail-index-sync.c index 097bd45168..983083efa4 100644 --- a/src/lib-index/mail-index-sync.c +++ b/src/lib-index/mail-index-sync.c @@ -998,7 +998,7 @@ void mail_index_sync_flags_apply(const struct mail_index_sync_rec *sync_rec, { i_assert(sync_rec->type == MAIL_INDEX_SYNC_TYPE_FLAGS); - *flags = (*flags & ENUM_NEGATE(sync_rec->remove_flags)) | sync_rec->add_flags; + *flags = (*flags & ~sync_rec->remove_flags) | sync_rec->add_flags; } bool mail_index_sync_keywords_apply(const struct mail_index_sync_rec *sync_rec, diff --git a/src/lib-index/mail-index-transaction-update.c b/src/lib-index/mail-index-transaction-update.c index dfceaf23e5..8158e4480e 100644 --- a/src/lib-index/mail-index-transaction-update.c +++ b/src/lib-index/mail-index-transaction-update.c @@ -500,10 +500,10 @@ mail_index_insert_flag_update(struct mail_index_transaction *t, updates[idx].add_flags = (updates[idx].add_flags | u.add_flags) & - ENUM_NEGATE(u.remove_flags); + ~u.remove_flags; updates[idx].remove_flags = (updates[idx].remove_flags | u.remove_flags) & - ENUM_NEGATE(u.add_flags); + ~u.add_flags; u.uid1 = updates[idx].uid2 + 1; if (updates[idx].add_flags == 0 && diff --git a/src/lib-index/mail-index-transaction-view.c b/src/lib-index/mail-index-transaction-view.c index 240c7fedae..34b69ecac6 100644 --- a/src/lib-index/mail-index-transaction-view.c +++ b/src/lib-index/mail-index-transaction-view.c @@ -122,7 +122,7 @@ tview_apply_flag_updates(struct mail_index_view_transaction *tview, trec = PTR_OFFSET(tview->recs, (seq-1) * tview->record_size); memcpy(trec, rec, map->hdr.record_size); trec->flags |= updates[idx].add_flags & 0xff; - trec->flags &= ENUM_NEGATE(updates[idx].remove_flags); + trec->flags &= ~updates[idx].remove_flags; return trec; } diff --git a/src/lib-index/mail-index-view-sync.c b/src/lib-index/mail-index-view-sync.c index d8a57936d6..58caaf6b12 100644 --- a/src/lib-index/mail-index-view-sync.c +++ b/src/lib-index/mail-index-view-sync.c @@ -369,7 +369,7 @@ static int view_sync_apply_lost_changes(struct mail_index_view_sync_ctx *ctx, i_zero(&flag_update); flag_update.uid1 = flag_update.uid2 = new_rec->uid; flag_update.add_flags = new_rec->flags; - flag_update.remove_flags = ENUM_NEGATE(new_rec->flags) & 0xff; + flag_update.remove_flags = ~new_rec->flags & 0xff; if (mail_index_sync_record(&ctx->sync_map_ctx, &thdr, &flag_update) < 0) return -1; diff --git a/src/plugins/acl/acl-cache.c b/src/plugins/acl/acl-cache.c index f91d09467d..38c33676fd 100644 --- a/src/plugins/acl/acl-cache.c +++ b/src/plugins/acl/acl-cache.c @@ -235,7 +235,7 @@ acl_cache_update_rights_mask(struct acl_cache *cache, /* remove changed bits from old mask */ size = I_MIN(old_mask->size, change_mask->size); for (i = 0; i < size; i++) - old_mask->mask[i] &= ENUM_NEGATE(change_mask->mask[i]); + old_mask->mask[i] &= ~change_mask->mask[i]; break; case ACL_MODIFY_MODE_REPLACE: if (old_mask == NULL && change_mask == NULL) @@ -359,7 +359,7 @@ acl_cache_my_current_rights_recalculate(struct acl_object_cache *obj_cache) /* apply the negative rights. they override positive rights. */ size = I_MIN(mask->size, obj_cache->my_neg_rights->size); for (i = 0; i < size; i++) - mask->mask[i] &= ENUM_NEGATE(obj_cache->my_neg_rights->mask[i]); + mask->mask[i] &= ~obj_cache->my_neg_rights->mask[i]; } obj_cache->my_current_rights = mask;