Browse Source

Fix RawText.getLineDelimiter() for empty first line

Bug: 456776
Change-Id: Iae50be89ea6d5aee33bd938a937ac5ca578aabca
Signed-off-by: Frank Wagner <frank.wagner@fr.ibm.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
tags/v3.7.0.201502031740-rc1
Frank Wagner 9 years ago
parent
commit
e09e7c064e

+ 7
- 0
org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/RawTextTest.java View File

@@ -230,6 +230,13 @@ public class RawTextTest {
assertFalse(rt.isMissingNewlineAtEnd());
}

@Test
public void testLineDelimiter2() throws Exception {
RawText rt = new RawText(Constants.encodeASCII("\nfoo"));
assertEquals("\n", rt.getLineDelimiter());
assertTrue(rt.isMissingNewlineAtEnd());
}

private static RawText t(String text) {
StringBuilder r = new StringBuilder();
for (int i = 0; i < text.length(); i++) {

+ 1
- 1
org.eclipse.jgit/src/org/eclipse/jgit/diff/RawText.java View File

@@ -289,7 +289,7 @@ public class RawText extends Sequence {
int e = getEnd(0);
if (content[e - 1] != '\n')
return null;
if (content.length > 1 && content[e - 2] == '\r')
if (content.length > 1 && e > 1 && content[e - 2] == '\r')
return "\r\n"; //$NON-NLS-1$
else
return "\n"; //$NON-NLS-1$

Loading…
Cancel
Save