oid_pos(): access table through const pointers

When we are looking up an oid in an array, we obviously don't need to
write to the array. Let's mark it as const in the function interfaces,
as well as in the local variables we use to derference the void pointer
(note a few cases use pointers-to-pointers, so we mark everything
const).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2021-01-28 01:20:23 -05:00 committed by Junio C Hamano
parent 45ee13b942
commit 8380dcd700
7 changed files with 13 additions and 13 deletions

View File

@ -390,9 +390,9 @@ static void name_tips(void)
} }
} }
static const struct object_id *nth_tip_table_ent(size_t ix, void *table_) static const struct object_id *nth_tip_table_ent(size_t ix, const void *table_)
{ {
struct tip_table_entry *table = table_; const struct tip_table_entry *table = table_;
return &table[ix].oid; return &table[ix].oid;
} }

View File

@ -1012,9 +1012,9 @@ static int write_graph_chunk_oids(struct hashfile *f,
return 0; return 0;
} }
static const struct object_id *commit_to_oid(size_t index, void *table) static const struct object_id *commit_to_oid(size_t index, const void *table)
{ {
struct commit **commits = table; const struct commit * const *commits = table;
return &commits[index]->object.oid; return &commits[index]->object.oid;
} }

View File

@ -105,9 +105,9 @@ static timestamp_t parse_commit_date(const char *buf, const char *tail)
return parse_timestamp(dateptr, NULL, 10); return parse_timestamp(dateptr, NULL, 10);
} }
static const struct object_id *commit_graft_oid_access(size_t index, void *table) static const struct object_id *commit_graft_oid_access(size_t index, const void *table)
{ {
struct commit_graft **commit_graft_table = table; const struct commit_graft * const *commit_graft_table = table;
return &commit_graft_table[index]->oid; return &commit_graft_table[index]->oid;
} }

View File

@ -50,7 +50,7 @@ static uint32_t take2(const struct object_id *oid, size_t ofs)
* The oid of element i (between 0 and nr - 1) should be returned * The oid of element i (between 0 and nr - 1) should be returned
* by "fn(i, table)". * by "fn(i, table)".
*/ */
int oid_pos(const struct object_id *oid, void *table, size_t nr, int oid_pos(const struct object_id *oid, const void *table, size_t nr,
oid_access_fn fn) oid_access_fn fn)
{ {
size_t hi = nr; size_t hi = nr;

View File

@ -1,10 +1,10 @@
#ifndef HASH_LOOKUP_H #ifndef HASH_LOOKUP_H
#define HASH_LOOKUP_H #define HASH_LOOKUP_H
typedef const struct object_id *oid_access_fn(size_t index, void *table); typedef const struct object_id *oid_access_fn(size_t index, const void *table);
int oid_pos(const struct object_id *oid, int oid_pos(const struct object_id *oid,
void *table, const void *table,
size_t nr, size_t nr,
oid_access_fn fn); oid_access_fn fn);

View File

@ -22,9 +22,9 @@ void oid_array_sort(struct oid_array *array)
array->sorted = 1; array->sorted = 1;
} }
static const struct object_id *oid_access(size_t index, void *table) static const struct object_id *oid_access(size_t index, const void *table)
{ {
struct object_id *array = table; const struct object_id *array = table;
return &array[index]; return &array[index];
} }

View File

@ -610,9 +610,9 @@ static inline void dump_bitmap(struct hashfile *f, struct ewah_bitmap *bitmap)
die("Failed to write bitmap index"); die("Failed to write bitmap index");
} }
static const struct object_id *oid_access(size_t pos, void *table) static const struct object_id *oid_access(size_t pos, const void *table)
{ {
struct pack_idx_entry **index = table; const struct pack_idx_entry * const *index = table;
return &index[pos]->oid; return &index[pos]->oid;
} }