summaryrefslogtreecommitdiff
path: root/xdiff
diff options
context:
space:
mode:
authorJohannes Schindelin <Johannes.Schindelin@gmx.de>2006-11-29 23:25:11 (GMT)
committerJunio C Hamano <junkio@cox.net>2006-12-03 01:28:19 (GMT)
commit710daa83fc76f79b8f2ee9a765d297187c2c1aeb (patch)
tree9e3e18087e83977b4f5df6c7057d7d17a1a672e3 /xdiff
parent875b8ce47650d712c8f464cfedb9147673fe3ff7 (diff)
downloadgit-710daa83fc76f79b8f2ee9a765d297187c2c1aeb.zip
git-710daa83fc76f79b8f2ee9a765d297187c2c1aeb.tar.gz
git-710daa83fc76f79b8f2ee9a765d297187c2c1aeb.tar.bz2
xdl_merge(): fix thinko
If one side's block (of changed lines) ends later than the other side's block, the former should be tested against the next block of the other side, not vice versa. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'xdiff')
-rw-r--r--xdiff/xmerge.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xdiff/xmerge.c b/xdiff/xmerge.c
index 3f5dc87..1fe7a1b 100644
--- a/xdiff/xmerge.c
+++ b/xdiff/xmerge.c
@@ -318,13 +318,13 @@ static int xdl_do_merge(xdfenv_t *xe1, xdchange_t *xscr1, const char *name1,
xscr1->i1 = i2;
xscr1->i2 += xscr1->chg2;
xscr1->chg2 = 0;
- xscr1 = xscr1->next;
+ xscr2 = xscr2->next;
} else if (i2 > i1) {
xscr2->chg1 -= i2 - i1;
xscr2->i1 = i1;
xscr2->i2 += xscr2->chg2;
xscr2->chg2 = 0;
- xscr2 = xscr2->next;
+ xscr1 = xscr1->next;
} else {
xscr1 = xscr1->next;
xscr2 = xscr2->next;