tree-diff: remove the usage of the_hash_algo global
emit_path() uses the global the_hash_algo even though a local repository is already available via struct diff_options *opt. Replace these uses with opt->repo->hash_algo. With no remaining reliance on global states in this file, drop the dependency on 'environment.h' and remove '#define USE_THE_REPOSITORY_VARIABLE'. This follows earlier cleanups to introduce opt->repo in tree-diff.c [1][2]. [1]- https://lore.kernel.org/git/20180921155739.14407-21-pclouds@gmail.com/ [2]- https://lore.kernel.org/git/20260109213021.2546-2-l.s.r@web.de/ Signed-off-by: Shreyansh Paliwal <shreyanshpaliwalcmsmn@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Shreyansh Paliwal committed
Feb 20, 2026 at 23:21 UTC
1e50d839f8592daf364778298a61670c4b998654
1 file changed
+2
-4
tree-diff.c
+2
-4
@@ -2,7 +2,6 @@
2
* Helper functions for tree diff generation
3
*/
4
5
-#define USE_THE_REPOSITORY_VARIABLE
5
#define DISABLE_SIGN_COMPARE_WARNINGS
6
7
#include "git-compat-util.h"
@@ -11,7 +10,6 @@
10
#include "hash.h"
11
#include "tree.h"
12
#include "tree-walk.h"
14
-#include "environment.h"
13
#include "repository.h"
14
#include "dir.h"
15
@@ -253,7 +251,7 @@ static void emit_path(struct combine_diff_path ***tail,
251
252
strbuf_add(base, path, pathlen);
253
p = combine_diff_path_new(base->buf, base->len, mode,
256
- oid ? oid : null_oid(the_hash_algo),
254
+ oid ? oid : null_oid(opt->repo->hash_algo),
255
nparent);
256
strbuf_setlen(base, old_baselen);
257
@@ -278,7 +276,7 @@ static void emit_path(struct combine_diff_path ***tail,
276
mode_i = tp[i].entry.mode;
277
}
278
else {
281
- oid_i = null_oid(the_hash_algo);
279
+ oid_i = null_oid(opt->repo->hash_algo);
280
mode_i = 0;
281
}
282