Call get_oid_hex_algop() directly with 'the_hash_algo' to make the reliance on the global hash algorithm explicit rather than hiding it behind get_oid_hex().
Signed-off-by: Tian Yuchen <cat@malon.dev> --- I tried to modify all relevant functions to support calling 'repo->hash_algo'.
However, this failed the test:
not ok 26 - patch-id without repository # # cat >diff <<-\EOF && # diff --git a/bar b/bar # index bdaf90f..31051f6 100644 # --- a/bar # +++ b/bar # @@ -2 +2,2 @@ # b # +c # EOF # nongit git patch-id <diff
repo=NULL happened here.
I can't think of a particularly good way to solve this, so I didn't bother with it anymore. In other words, replacing the_repository with repo here isn't worth the effort IMO.
At least for now, this section is no longer "secretly" reading global variable.
Regards, Yuchen
builtin/patch-id.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to builtin/patch-id.c +1 −1
diff --git a/builtin/patch-id.c b/builtin/patch-id.c index 2781598ede..2939c353fd 100644 --- a/builtin/patch-id.c +++ b/builtin/patch-id.c @@ -90,7 +90,7 @@ static size_t get_one_patchid(struct object_id *next_oid, struct object_id *resu continue; } - if (!get_oid_hex(p, next_oid)) { + if (!get_oid_hex_algop(p, next_oid, the_hash_algo)) { found_next = 1; break; }
-- 2.43.0