summaryrefslogtreecommitdiff
path: root/diff.c
diff options
context:
space:
mode:
authorJohannes Schindelin <johannes.schindelin@gmx.de>2018-08-13 11:33:24 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-08-13 17:44:51 (GMT)
commit0b91faa010e438c4e0a58706573f3777da86ecde (patch)
tree1366839fbdd17b4a1cf00e84cc40a534200cfa19 /diff.c
parent31cf61a08008eb152247b16ee96811220f019fbd (diff)
downloadgit-0b91faa010e438c4e0a58706573f3777da86ecde.zip
git-0b91faa010e438c4e0a58706573f3777da86ecde.tar.gz
git-0b91faa010e438c4e0a58706573f3777da86ecde.tar.bz2
range-diff --dual-color: skip white-space warnings
When displaying a diff of diffs, it is possible that there is an outer `+` before a context line. That happens when the context changed between old and new commit. When that context line starts with a tab (after the space that marks it as context line), our diff machinery spits out a white-space error (space before tab), but in this case, that is incorrect. Rather than adding a specific whitespace flag that specifically ignores the first space in the output (and might miss other problems with the white-space warnings), let's just skip handling white-space errors in dual color mode to begin with. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diff.c')
-rw-r--r--diff.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/diff.c b/diff.c
index e6c857a..ea8ecae 100644
--- a/diff.c
+++ b/diff.c
@@ -1299,6 +1299,7 @@ static void emit_diff_symbol_from_struct(struct diff_options *o,
set = diff_get_color_opt(o, DIFF_FRAGINFO);
else if (c != '+')
set = diff_get_color_opt(o, DIFF_CONTEXT);
+ flags &= ~DIFF_SYMBOL_CONTENT_WS_MASK;
}
emit_line_ws_markup(o, set, reset, line, len, set_sign, '+',
flags & DIFF_SYMBOL_CONTENT_WS_MASK,