summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2021-08-11 12:36:17 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2021-08-11 12:36:17 -0700
commit7cfaa86fe6f61698752d13c59ac97a102d1fbaae (patch)
treece8fbddbbabcf6da2dc90e7259b46978302ad0ef
parentGit 2.33-rc1 (diff)
parentobject-file: use unsigned arithmetic with bit mask (diff)
downloadtgif-7cfaa86fe6f61698752d13c59ac97a102d1fbaae.tar.xz
Merge branch 'cb/many-alternate-optim-fixup'
Build fix. * cb/many-alternate-optim-fixup: object-file: use unsigned arithmetic with bit mask object-store: avoid extra ';' from KHASH_INIT oidtree: avoid nested struct oidtree_node
-rw-r--r--object-file.c2
-rw-r--r--object-store.h2
-rw-r--r--oidtree.c11
3 files changed, 5 insertions, 10 deletions
diff --git a/object-file.c b/object-file.c
index 3d27dc8dea..a8be899481 100644
--- a/object-file.c
+++ b/object-file.c
@@ -2474,7 +2474,7 @@ struct oidtree *odb_loose_cache(struct object_directory *odb,
struct strbuf buf = STRBUF_INIT;
size_t word_bits = bitsizeof(odb->loose_objects_subdir_seen[0]);
size_t word_index = subdir_nr / word_bits;
- size_t mask = 1 << (subdir_nr % word_bits);
+ size_t mask = 1u << (subdir_nr % word_bits);
uint32_t *bitmap;
if (subdir_nr < 0 ||
diff --git a/object-store.h b/object-store.h
index e679acc4c3..d24915ced1 100644
--- a/object-store.h
+++ b/object-store.h
@@ -34,7 +34,7 @@ struct object_directory {
};
KHASH_INIT(odb_path_map, const char * /* key: odb_path */,
- struct object_directory *, 1, fspathhash, fspatheq);
+ struct object_directory *, 1, fspathhash, fspatheq)
void prepare_alt_odb(struct repository *r);
char *compute_alternate_path(const char *path, struct strbuf *err);
diff --git a/oidtree.c b/oidtree.c
index 7eb0e9ba05..580cab8ae2 100644
--- a/oidtree.c
+++ b/oidtree.c
@@ -6,11 +6,6 @@
#include "alloc.h"
#include "hash.h"
-struct oidtree_node {
- /* n.k[] is used to store "struct object_id" */
- struct cb_node n;
-};
-
struct oidtree_iter_data {
oidtree_iter fn;
void *arg;
@@ -35,13 +30,13 @@ void oidtree_clear(struct oidtree *ot)
void oidtree_insert(struct oidtree *ot, const struct object_id *oid)
{
- struct oidtree_node *on;
+ struct cb_node *on;
if (!oid->algo)
BUG("oidtree_insert requires oid->algo");
on = mem_pool_alloc(&ot->mem_pool, sizeof(*on) + sizeof(*oid));
- oidcpy_with_padding((struct object_id *)on->n.k, oid);
+ oidcpy_with_padding((struct object_id *)on->k, oid);
/*
* n.b. Current callers won't get us duplicates, here. If a
@@ -49,7 +44,7 @@ void oidtree_insert(struct oidtree *ot, const struct object_id *oid)
* that won't be freed until oidtree_clear. Currently it's not
* worth maintaining a free list
*/
- cb_insert(&ot->tree, &on->n, sizeof(*oid));
+ cb_insert(&ot->tree, on, sizeof(*oid));
}