-
Bug
-
Resolution: Fixed
-
P3
-
8, 11, 15
-
b30
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8250121 | 15.0.2 | Chris Plummer | P3 | Resolved | Fixed | b01 |
JDK-8250420 | 15.0.1 | Chris Plummer | P3 | Resolved | Fixed | b03 |
JDK-8261321 | 11.0.11 | Chris Plummer | P3 | Resolved | Fixed | b02 |
JDK-8262336 | openjdk8u292 | Chris Plummer | P3 | Resolved | Fixed | b05 |
sun.jvm.hotspot.code.CompressedReadStream:readDouble
public double readDouble() {
int rh = readInt();
int rl = readInt();
int h = reverseInt(rh);
int l = reverseInt(rl);
return Double.longBitsToDouble((h << 32) | ((long)l & 0x00000000FFFFFFFFL));
}
h is an int so h<<32 is a nop. Need (long)h to shift it into the top 32 bits.
public double readDouble() {
int rh = readInt();
int rl = readInt();
int h = reverseInt(rh);
int l = reverseInt(rl);
return Double.longBitsToDouble((h << 32) | ((long)l & 0x00000000FFFFFFFFL));
}
h is an int so h<<32 is a nop. Need (long)h to shift it into the top 32 bits.
- backported by
-
JDK-8250121 sun.jvm.hostspot.code.CompressedReadStream readDouble() conversion to long mishandled
- Resolved
-
JDK-8250420 sun.jvm.hostspot.code.CompressedReadStream readDouble() conversion to long mishandled
- Resolved
-
JDK-8261321 sun.jvm.hostspot.code.CompressedReadStream readDouble() conversion to long mishandled
- Resolved
-
JDK-8262336 sun.jvm.hostspot.code.CompressedReadStream readDouble() conversion to long mishandled
- Resolved