diff options
author | Stefan Lay <stefan.lay@sap.com> | 2011-05-16 21:15:25 -0400 |
---|---|---|
committer | Code Review <codereview-daemon@eclipse.org> | 2011-05-16 21:15:25 -0400 |
commit | b13ca9121b8f2c6a0ebca1a2a12c4af7e75dfd20 (patch) | |
tree | 1650798e943456a0bc705c1a91ff6e52ed647f14 | |
parent | 2e43e1e904c9c8702d3c248d0fdb8b7cb6162cb2 (diff) | |
parent | c2b87d59a0ca13f1444ea3a62decfa3f04ee7600 (diff) | |
download | jgit-b13ca9121b8f2c6a0ebca1a2a12c4af7e75dfd20.tar.gz jgit-b13ca9121b8f2c6a0ebca1a2a12c4af7e75dfd20.zip |
Merge "Fix diff bug on inserted line"
-rw-r--r-- | org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractDiffTestCase.java | 10 | ||||
-rw-r--r-- | org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffAlgorithm.java | 2 |
2 files changed, 10 insertions, 2 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractDiffTestCase.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractDiffTestCase.java index 85b5eb7c0b..b8f8dcb5ad 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractDiffTestCase.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractDiffTestCase.java @@ -191,7 +191,15 @@ public abstract class AbstractDiffTestCase { public void testEdit_InsertNearCommonTail() { EditList r = diff(t("aq}nb"), t("aCq}nD}nb")); assertEquals(new Edit(1, 1, 1, 2), r.get(0)); - assertEquals(new Edit(3, 3, 4, 7), r.get(1)); + assertEquals(new Edit(4, 4, 5, 8), r.get(1)); + assertEquals(2, r.size()); + } + + @Test + public void testEdit_LinuxBug() { + EditList r = diff(t("a{bcdE}z"), t("a{0bcdEE}z")); + assertEquals(new Edit(2, 2, 2, 3), r.get(0)); + assertEquals(new Edit(6, 6, 7, 8), r.get(1)); assertEquals(2, r.size()); } diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffAlgorithm.java b/org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffAlgorithm.java index b20e3258b6..96f4d11857 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffAlgorithm.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/diff/DiffAlgorithm.java @@ -126,7 +126,7 @@ public abstract class DiffAlgorithm { Edit last = e.get(e.size() - 1); if (last.getType() == Edit.Type.INSERT) { while (last.endB < b.size() - && cmp.equals(b, last.beginB, b, region.endB)) { + && cmp.equals(b, last.beginB, b, last.endB)) { last.beginA++; last.endA++; last.beginB++; |