summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--org.eclipse.jgit.test/tst/org/eclipse/jgit/util/ChangeIdUtilTest.java4
-rw-r--r--org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java2
2 files changed, 6 insertions, 0 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/ChangeIdUtilTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/ChangeIdUtilTest.java
index 66649b1006..7273cdbabc 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/ChangeIdUtilTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/ChangeIdUtilTest.java
@@ -639,6 +639,10 @@ public class ChangeIdUtilTest {
@Test
public void testIndexOfChangeId() {
+ assertEquals(-1, ChangeIdUtil.indexOfChangeId("", "\n"));
+ assertEquals(-1, ChangeIdUtil.indexOfChangeId("\n", "\n"));
+ assertEquals(-1, ChangeIdUtil.indexOfChangeId("\r\n", "\r\n"));
+
assertEquals(3, ChangeIdUtil.indexOfChangeId("x\n" + "\n"
+ "Change-Id: I3b7e4e16b503ce00f07ba6ad01d97a356dad7701\n",
"\n"));
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java
index 676ca9b8dc..35850dcaac 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java
@@ -229,6 +229,8 @@ public class ChangeIdUtil {
*/
public static int indexOfChangeId(String message, String delimiter) {
String[] lines = message.split(delimiter);
+ if (lines.length == 0)
+ return -1;
int indexOfChangeIdLine = 0;
boolean inFooter = false;
for (int i = lines.length - 1; i >= 0; --i) {