On 11/24/15 1:52 PM, Mandy Chung wrote:
The value of anchor is an address and it’s an unsigned value. The check should
be fixed to handle unsigned value.
diff --git a/src/java.base/share/classes/java/lang/StackStreamFactory.java
b/src/java.base/share/classes/java/lang/StackStreamFactory.java
--- a/src/java.base/share/classes/java/lang/StackStreamFactory.java
+++ b/src/java.base/share/classes/java/lang/StackStreamFactory.java
@@ -230,8 +230,8 @@
}
break;
case OPEN:
- if (this.anchor <= 0) {
- throw new IllegalStateException("This stack stream is not
valid for walking");
+ if (this.anchor == 0 || this.anchor == -1L) {
+ throw new IllegalStateException("This stack stream is not
valid for walking: " + anchor);
You use both 'this.anchor' and 'anchor'. Seems inconsistent.
Dan
}
break;
case CLOSED:
Thanks
Mandy