Code review request for 8012044: Give more information about self-suppression from Throwable.addSuppressed
Joe Darcy
joe.darcy at oracle.com
Fri Apr 12 01:19:30 UTC 2013
Hello,
Please review the patch below to address
8012044: Give more information about self-suppression from
Throwable.addSuppressed
http://cr.openjdk.java.net/~darcy/8012044.0/
Thanks,
-Joe
diff -r 006a7a576fe9 src/share/classes/java/lang/Throwable.java
--- a/src/share/classes/java/lang/Throwable.java Thu Apr 11 12:22:23
2013 +0900
+++ b/src/share/classes/java/lang/Throwable.java Thu Apr 11 18:16:38
2013 -0700
@@ -1039,7 +1039,7 @@
*/
public final synchronized void addSuppressed(Throwable exception) {
if (exception == this)
- throw new IllegalArgumentException(SELF_SUPPRESSION_MESSAGE);
+ throw new
IllegalArgumentException(SELF_SUPPRESSION_MESSAGE, exception);
if (exception == null)
throw new NullPointerException(NULL_CAUSE_MESSAGE);
diff -r 006a7a576fe9 test/java/lang/Throwable/SuppressedExceptions.java
--- a/test/java/lang/Throwable/SuppressedExceptions.java Thu Apr 11
12:22:23 2013 +0900
+++ b/test/java/lang/Throwable/SuppressedExceptions.java Thu Apr 11
18:16:38 2013 -0700
@@ -26,7 +26,7 @@
/*
* @test
- * @bug 6911258 6962571 6963622 6991528 7005628
+ * @bug 6911258 6962571 6963622 6991528 7005628 8012044
* @summary Basic tests of suppressed exceptions
* @author Joseph D. Darcy
*/
@@ -48,7 +48,9 @@
throwable.addSuppressed(throwable);
throw new RuntimeException("IllegalArgumentException for
self-suppresion not thrown.");
} catch (IllegalArgumentException iae) {
- ; // Expected
+ // Expected to be here
+ if (iae.getCause() != throwable)
+ throw new RuntimeException("Bad cause after
self-suppresion.");
}
}
-Joe
More information about the core-libs-dev
mailing list