Skip to content

Commit

Permalink
xdl_merge(): fix an off-by-one bug
Browse files Browse the repository at this point in the history
The line range is i1 .. (i1 + chg1 - 1), not i1 .. (i1 + chg1).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Johannes Schindelin authored and Junio C Hamano committed Dec 3, 2006
1 parent c2b4fae commit 875b8ce
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions xdiff/xmerge.c
Original file line number Diff line number Diff line change
Expand Up @@ -194,11 +194,11 @@ static int xdl_refine_conflicts(xdfenv_t *xe1, xdfenv_t *xe2, xdmerge_t *m,
* we have a very simple mmfile structure.
*/
t1.ptr = (char *)xe1->xdf2.recs[m->i1]->ptr;
t1.size = xe1->xdf2.recs[m->i1 + m->chg1]->ptr
+ xe1->xdf2.recs[m->i1 + m->chg1]->size - t1.ptr;
t2.ptr = (char *)xe2->xdf2.recs[m->i1]->ptr;
t2.size = xe2->xdf2.recs[m->i1 + m->chg1]->ptr
+ xe2->xdf2.recs[m->i1 + m->chg1]->size - t2.ptr;
t1.size = xe1->xdf2.recs[m->i1 + m->chg1 - 1]->ptr
+ xe1->xdf2.recs[m->i1 + m->chg1 - 1]->size - t1.ptr;
t2.ptr = (char *)xe2->xdf2.recs[m->i2]->ptr;
t2.size = xe2->xdf2.recs[m->i2 + m->chg2 - 1]->ptr
+ xe2->xdf2.recs[m->i2 + m->chg2 - 1]->size - t2.ptr;
if (xdl_do_diff(&t1, &t2, xpp, &xe) < 0)
return -1;
if (xdl_change_compact(&xe.xdf1, &xe.xdf2, xpp->flags) < 0 ||
Expand Down

0 comments on commit 875b8ce

Please sign in to comment.