Convert GIT_SHA1_RAWSZ used for allocation to GIT_MAX_RAWSZ
Since we will likely be introducing a new hash function at some point, and that hash function might be longer than 20 bytes, use the constant GIT_MAX_RAWSZ, which is designed to be suitable for allocations, instead of GIT_SHA1_RAWSZ. This will ease the transition down the line by distinguishing between places where we need to allocate memory suitable for the largest hash from those where we need to handle the current hash. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
dc01505f7f
commit
cd02599c48
@ -55,7 +55,7 @@ static int scan_hunk_header(const char *p, int *p_before, int *p_after)
|
||||
|
||||
static void flush_one_hunk(struct object_id *result, git_SHA_CTX *ctx)
|
||||
{
|
||||
unsigned char hash[GIT_SHA1_RAWSZ];
|
||||
unsigned char hash[GIT_MAX_RAWSZ];
|
||||
unsigned short carry = 0;
|
||||
int i;
|
||||
|
||||
|
@ -1162,7 +1162,7 @@ static void check_aliased_update(struct command *cmd, struct string_list *list)
|
||||
const char *dst_name;
|
||||
struct string_list_item *item;
|
||||
struct command *dst_cmd;
|
||||
unsigned char sha1[GIT_SHA1_RAWSZ];
|
||||
unsigned char sha1[GIT_MAX_RAWSZ];
|
||||
int flag;
|
||||
|
||||
strbuf_addf(&buf, "%s%s", get_git_namespace(), cmd->ref_name);
|
||||
|
2
cache.h
2
cache.h
@ -968,7 +968,7 @@ extern char *sha1_pack_index_name(const unsigned char *sha1);
|
||||
extern const char *find_unique_abbrev(const unsigned char *sha1, int len);
|
||||
extern int find_unique_abbrev_r(char *hex, const unsigned char *sha1, int len);
|
||||
|
||||
extern const unsigned char null_sha1[GIT_SHA1_RAWSZ];
|
||||
extern const unsigned char null_sha1[GIT_MAX_RAWSZ];
|
||||
extern const struct object_id null_oid;
|
||||
|
||||
static inline int hashcmp(const unsigned char *sha1, const unsigned char *sha2)
|
||||
|
@ -71,7 +71,7 @@ static int init_patch_id_entry(struct patch_id *patch,
|
||||
struct commit *commit,
|
||||
struct patch_ids *ids)
|
||||
{
|
||||
unsigned char header_only_patch_id[GIT_SHA1_RAWSZ];
|
||||
unsigned char header_only_patch_id[GIT_MAX_RAWSZ];
|
||||
|
||||
patch->commit = commit;
|
||||
if (commit_patch_id(commit, &ids->diffopts, header_only_patch_id, 1))
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
struct patch_id {
|
||||
struct hashmap_entry ent;
|
||||
unsigned char patch_id[GIT_SHA1_RAWSZ];
|
||||
unsigned char patch_id[GIT_MAX_RAWSZ];
|
||||
struct commit *commit;
|
||||
};
|
||||
|
||||
|
@ -1606,7 +1606,7 @@ static void mark_bad_packed_object(struct packed_git *p,
|
||||
if (!hashcmp(sha1, p->bad_object_sha1 + GIT_SHA1_RAWSZ * i))
|
||||
return;
|
||||
p->bad_object_sha1 = xrealloc(p->bad_object_sha1,
|
||||
st_mult(GIT_SHA1_RAWSZ,
|
||||
st_mult(GIT_MAX_RAWSZ,
|
||||
st_add(p->num_bad_objects, 1)));
|
||||
hashcpy(p->bad_object_sha1 + GIT_SHA1_RAWSZ * p->num_bad_objects, sha1);
|
||||
p->num_bad_objects++;
|
||||
@ -3913,7 +3913,7 @@ static int check_stream_sha1(git_zstream *stream,
|
||||
const unsigned char *expected_sha1)
|
||||
{
|
||||
git_SHA_CTX c;
|
||||
unsigned char real_sha1[GIT_SHA1_RAWSZ];
|
||||
unsigned char real_sha1[GIT_MAX_RAWSZ];
|
||||
unsigned char buf[4096];
|
||||
unsigned long total_read;
|
||||
int status = Z_OK;
|
||||
|
@ -16,11 +16,11 @@ typedef int (*disambiguate_hint_fn)(const unsigned char *, void *);
|
||||
struct disambiguate_state {
|
||||
int len; /* length of prefix in hex chars */
|
||||
char hex_pfx[GIT_MAX_HEXSZ + 1];
|
||||
unsigned char bin_pfx[GIT_SHA1_RAWSZ];
|
||||
unsigned char bin_pfx[GIT_MAX_RAWSZ];
|
||||
|
||||
disambiguate_hint_fn fn;
|
||||
void *cb_data;
|
||||
unsigned char candidate[GIT_SHA1_RAWSZ];
|
||||
unsigned char candidate[GIT_MAX_RAWSZ];
|
||||
unsigned candidate_exists:1;
|
||||
unsigned candidate_checked:1;
|
||||
unsigned candidate_ok:1;
|
||||
|
@ -80,7 +80,7 @@ struct wt_status {
|
||||
int hints;
|
||||
|
||||
enum wt_status_format status_format;
|
||||
unsigned char sha1_commit[GIT_SHA1_RAWSZ]; /* when not Initial */
|
||||
unsigned char sha1_commit[GIT_MAX_RAWSZ]; /* when not Initial */
|
||||
|
||||
/* These are computed during processing of the individual sections */
|
||||
int commitable;
|
||||
|
Loading…
Reference in New Issue
Block a user