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 66649b100..7273cdbab 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 676ca9b8d..35850dcaa 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) {