提交 6134bd0e 编写于 作者: I igerasim

8055045: StringIndexOutOfBoundsException while reading krb5.conf

Reviewed-by: mullan
上级 e7b7c205
......@@ -763,9 +763,9 @@ public class Config {
private static String trimmed(String s) {
s = s.trim();
if (s.isEmpty()) return s;
if (s.charAt(0) == '"' && s.charAt(s.length()-1) == '"' ||
s.charAt(0) == '\'' && s.charAt(s.length()-1) == '\'') {
if (s.length() >= 2 &&
((s.charAt(0) == '"' && s.charAt(s.length()-1) == '"') ||
(s.charAt(0) == '\'' && s.charAt(s.length()-1) == '\''))) {
s = s.substring(1, s.length()-1).trim();
}
return s;
......
......@@ -22,7 +22,7 @@
*/
/*
* @test
* @bug 6319046
* @bug 6319046 8055045
* @compile -XDignore.symbol.file ParseConfig.java
* @run main/othervm ParseConfig
* @summary Problem with parsing krb5.conf
......@@ -32,7 +32,8 @@ import sun.security.krb5.Config;
public class ParseConfig {
public static void main(String[] args) throws Exception {
System.setProperty("java.security.krb5.conf", System.getProperty("test.src", ".") +"/krb5.conf");
System.setProperty("java.security.krb5.conf",
System.getProperty("test.src", ".") + "/krb5.conf");
Config config = Config.getInstance();
config.listTable();
......@@ -44,5 +45,11 @@ public class ParseConfig {
expected + "\"");
}
}
// JDK-8055045: IOOBE when reading an empty value
config.get("empty1", "NOVAL.COM");
config.get("empty2", "NOVAL.COM");
config.get("quote1", "NOVAL.COM");
config.get("quote2", "NOVAL.COM");
}
}
......@@ -27,3 +27,9 @@
}
}
NOVAL.COM = {
empty1 =
empty2 =.
quote1 = "
quote2 = '
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册