If external diff is specified through diff.external then it is used even if
`git diff --no-ext-diff` is used when there is a typechange.
Signed-off-by: Jakub Vrana <redacted>
---
diff.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/diff.c b/diff.c
index 208096f..898d610 100644
--- a/diff.c
+++ b/diff.c
@@ -3074,6 +3074,9 @@ static void run_diff(struct diff_filepair *p, struct
diff_options *o)
if (o->prefix_length)
strip_prefix(o->prefix_length, &name, &other);
+ if (!DIFF_OPT_TST(o, ALLOW_EXTERNAL))
+ pgm = NULL;
+
if (DIFF_PAIR_UNMERGED(p)) {
run_diff_cmd(pgm, name, NULL, attr_path,
NULL, NULL, NULL, o, p);
--
1.7.10.msysgit.1