]> git.ipfire.org Git - thirdparty/git.git/commitdiff
reftable/block: adjust type of the restart length
authorPatrick Steinhardt <ps@pks.im>
Mon, 20 Jan 2025 16:17:25 +0000 (17:17 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 21 Jan 2025 22:20:30 +0000 (14:20 -0800)
The restart length is tracked as a positive integer even though it
cannot ever be negative. Furthermore, it is effectively capped via the
MAX_RESTARTS variable.

Adjust the type of the variable to be `uint32_t`. While this type is
excessive given that MAX_RESTARTS fits into an `uint16_t`, other places
already use 32 bit integers for restarts, so this type is being more
consistent.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
reftable/block.c
reftable/reftable-writer.h

index 12750852574ac051aa269c4531b066f59676e008..8ac865ce781e45c41722383e74a1c2dc59b061dc 100644 (file)
@@ -40,16 +40,15 @@ size_t footer_size(int version)
 static int block_writer_register_restart(struct block_writer *w, int n,
                                         int is_restart, struct reftable_buf *key)
 {
-       int rlen, err;
+       uint32_t rlen;
+       int err;
 
        rlen = w->restart_len;
-       if (rlen >= MAX_RESTARTS) {
+       if (rlen >= MAX_RESTARTS)
                is_restart = 0;
-       }
 
-       if (is_restart) {
+       if (is_restart)
                rlen++;
-       }
        if (2 + 3 * rlen + n > w->block_size - w->next)
                return -1;
        if (is_restart) {
@@ -148,8 +147,7 @@ done:
 
 int block_writer_finish(struct block_writer *w)
 {
-       int i;
-       for (i = 0; i < w->restart_len; i++) {
+       for (uint32_t i = 0; i < w->restart_len; i++) {
                put_be24(w->block + w->next, w->restarts[i]);
                w->next += 3;
        }
index 5f9afa620bb00de66c311765fb0ae8c6f56401ae..bfef3b172179888bf0fbeafddbdfb15a331589a2 100644 (file)
@@ -84,7 +84,7 @@ struct reftable_block_stats {
        /* total number of entries written */
        int entries;
        /* total number of key restarts */
-       int restarts;
+       uint32_t restarts;
        /* total number of blocks */
        int blocks;
        /* total number of index blocks */