diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index c60e1140e5f732f8859c38a441ec90740bae750f..bbe1de2ddfda0c53271ce967dc99b05fce617c03 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -1828,7 +1828,9 @@ public class Functions { * @since 1.517 */ public static String breakableString(final String plain) { - + if (plain == null) { + return null; + } return plain.replaceAll("([\\p{Punct}&&[^;]]+\\w)", "$1") .replaceAll("([^\\p{Punct}\\s-]{20})(?=[^\\p{Punct}\\s-]{10})", "$1") ; diff --git a/core/src/test/java/hudson/FunctionsTest.java b/core/src/test/java/hudson/FunctionsTest.java index f0e5213900261f0bbb48326ed4dc7c33ba5b5bbe..7bad097807f9adb557c7118efb44495a370d565c 100644 --- a/core/src/test/java/hudson/FunctionsTest.java +++ b/core/src/test/java/hudson/FunctionsTest.java @@ -36,7 +36,7 @@ import java.util.Locale; import java.util.logging.Level; import java.util.logging.LogRecord; import jenkins.model.Jenkins; -import static org.junit.Assert.assertEquals; +import static org.junit.Assert.*; import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; @@ -322,6 +322,7 @@ public class FunctionsTest { assertBrokenAs("<<a<bc<def<ghi<", "", "<", "<a", "<bc", "<def", "<ghi", "<"); assertBrokenAs("H,e.l/l:o=w_o+|d", "H", ",e", ".l", "/l", ":o", "=w", "_o", "+|d"); assertBrokenAs("a¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷ", "a¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷa¶‱ﻷ", "a¶‱ﻷa¶‱ﻷa¶‱ﻷ"); + assertNull(Functions.breakableString(null)); } private void assertBrokenAs(String plain, String... chunks) {