summaryrefslogtreecommitdiff
path: root/refs.c
diff options
context:
space:
mode:
authorbrian m. carlson <sandals@crustytoothpaste.net>2021-04-26 01:02:56 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-04-27 07:31:39 (GMT)
commit14228447c9ce664a4e9c31ba10344ec5e4ea4ba5 (patch)
tree75e66ea8ad821e4684497a995d9648658c37fcbf /refs.c
parent5a6dce70d7bb12ee2bc7926254c5b6741b91ac5f (diff)
downloadgit-14228447c9ce664a4e9c31ba10344ec5e4ea4ba5.zip
git-14228447c9ce664a4e9c31ba10344ec5e4ea4ba5.tar.gz
git-14228447c9ce664a4e9c31ba10344ec5e4ea4ba5.tar.bz2
hash: provide per-algorithm null OIDs
Up until recently, object IDs did not have an algorithm member, only a hash. Consequently, it was possible to share one null (all-zeros) object ID among all hash algorithms. Now that we're going to be handling objects from multiple hash algorithms, it's important to make sure that all object IDs have a correct algorithm field. Introduce a per-algorithm null OID, and add it to struct hash_algo. Introduce a wrapper function as well, and use it everywhere we used to use the null_oid constant. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'refs.c')
-rw-r--r--refs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/refs.c b/refs.c
index 261fd82..996063f 100644
--- a/refs.c
+++ b/refs.c
@@ -1107,7 +1107,7 @@ int ref_transaction_create(struct ref_transaction *transaction,
if (!new_oid || is_null_oid(new_oid))
BUG("create called without valid new_oid");
return ref_transaction_update(transaction, refname, new_oid,
- &null_oid, flags, msg, err);
+ null_oid(), flags, msg, err);
}
int ref_transaction_delete(struct ref_transaction *transaction,
@@ -1119,7 +1119,7 @@ int ref_transaction_delete(struct ref_transaction *transaction,
if (old_oid && is_null_oid(old_oid))
BUG("delete called with old_oid set to zeros");
return ref_transaction_update(transaction, refname,
- &null_oid, old_oid,
+ null_oid(), old_oid,
flags, msg, err);
}