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>
This commit is contained in:
committed by
Junio C Hamano
parent
5a6dce70d7
commit
14228447c9
@ -161,7 +161,7 @@ static struct combine_diff_path *path_appendnew(struct combine_diff_path *last,
|
||||
memcpy(p->path + base->len, path, pathlen);
|
||||
p->path[len] = 0;
|
||||
p->mode = mode;
|
||||
oidcpy(&p->oid, oid ? oid : &null_oid);
|
||||
oidcpy(&p->oid, oid ? oid : null_oid());
|
||||
|
||||
return p;
|
||||
}
|
||||
@ -243,7 +243,7 @@ static struct combine_diff_path *emit_path(struct combine_diff_path *p,
|
||||
mode_i = tp[i].entry.mode;
|
||||
}
|
||||
else {
|
||||
oid_i = &null_oid;
|
||||
oid_i = null_oid();
|
||||
mode_i = 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user