diff options
author | brian m. carlson <sandals@crustytoothpaste.net> | 2023-10-02 04:40:17 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-10-02 23:57:39 +0200 |
commit | 095261a18d91cf47e8e8ef3b55f5e88e52ffc85f (patch) | |
tree | e911cf01112411d9fb900e99e2c316909850a730 /hash.h | |
parent | tag: sign both hashes (diff) | |
download | git-095261a18d91cf47e8e8ef3b55f5e88e52ffc85f.tar.xz git-095261a18d91cf47e8e8ef3b55f5e88e52ffc85f.zip |
cache: add a function to read an OID of a specific algorithm
Currently, we always read a object ID of the current algorithm with
oidread. However, once we start converting objects, we'll need to
consider what happens when we want to read an object ID of a specific
algorithm, such as the compatibility algorithm. To make this easier,
let's define oidread_algop, which specifies which algorithm we should
use for our object ID, and define oidread in terms of it.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'hash.h')
-rw-r--r-- | hash.h | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -73,10 +73,15 @@ static inline void oidclr(struct object_id *oid) oid->algo = hash_algo_by_ptr(the_hash_algo); } +static inline void oidread_algop(struct object_id *oid, const unsigned char *hash, const struct git_hash_algo *algop) +{ + memcpy(oid->hash, hash, algop->rawsz); + oid->algo = hash_algo_by_ptr(algop); +} + static inline void oidread(struct object_id *oid, const unsigned char *hash) { - memcpy(oid->hash, hash, the_hash_algo->rawsz); - oid->algo = hash_algo_by_ptr(the_hash_algo); + oidread_algop(oid, hash, the_hash_algo); } static inline int is_empty_blob_sha1(const unsigned char *sha1) |