xdiff: fix merging of hunks with -W context and -u context
commit45d2f75f913c0545be473db1dc2595a1600413f5
authorRené Scharfe <l.s.r@web.de>
Wed, 14 Sep 2016 16:05:27 +0000 (14 18:05 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 14 Sep 2016 23:07:21 +0000 (14 16:07 -0700)
tree7e8fdfcb8af1d601222425123753df23686c91ff
parent0202c411edc25940cc381bf317badcdf67670be4
xdiff: fix merging of hunks with -W context and -u context

If the function context for a hunk (with -W) reaches the beginning of
the next hunk then we need to merge these two -- otherwise we'd show
some lines twice, which looks strange and even confuses git apply.  We
already do this checking and merging in xdl_emit_diff(), but forget to
consider regular context (with -u or -U).

Fix that by merging hunks already if function context of the first one
touches or overlaps regular context of the second one.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4051-diff-function-context.sh
xdiff/xemit.c