提交 26d9ae85 编写于 作者: M michaelm

6339649: URI.create should include a detail message when throwing IllegalArgumentException

Summary: create enclosing exception with message of enclosed
Reviewed-by: alanb, chegar
上级 0f670b72
...@@ -856,9 +856,7 @@ public final class URI ...@@ -856,9 +856,7 @@ public final class URI
try { try {
return new URI(str); return new URI(str);
} catch (URISyntaxException x) { } catch (URISyntaxException x) {
IllegalArgumentException y = new IllegalArgumentException(); throw new IllegalArgumentException(x.getMessage(), x);
y.initCause(x);
throw y;
} }
} }
......
...@@ -1536,6 +1536,7 @@ public class Test { ...@@ -1536,6 +1536,7 @@ public class Test {
serial(); serial();
urls(); urls();
npes(); npes();
bugs();
} }
...@@ -1572,6 +1573,19 @@ public class Test { ...@@ -1572,6 +1573,19 @@ public class Test {
} }
// miscellaneous bugs/rfes that don't fit in with the test framework
static void bugs() {
// 6339649 - include detail message from nested exception
try {
URI uri = URI.create("http://nowhere.net/should not be permitted");
} catch (IllegalArgumentException e) {
if ("".equals(e.getMessage()) || e.getMessage() == null) {
throw new RuntimeException ("No detail message");
}
}
}
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
switch (args.length) { switch (args.length) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册