summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-09 15:37:31 +0000
committermkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-09 15:37:31 +0000
commit9df20ffd79e4223936e9014db0c0258d3135e347 (patch)
treea6c5e303c392a8bc545ae3a1de2fef0fd3dc6440
parentc7387bb556b1409f2d31f02967a1a27d067f2844 (diff)
downloadppe42-gcc-9df20ffd79e4223936e9014db0c0258d3135e347.tar.gz
ppe42-gcc-9df20ffd79e4223936e9014db0c0258d3135e347.zip
2004-07-09 Michael Koch <konqueror@gmx.de>
* java/io/ObjectInputStream.java (readFields): Use long datatype when shifting byte values more then 24 bits left. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84382 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/io/ObjectInputStream.java16
2 files changed, 13 insertions, 8 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index d78d2734db7..b7eea9697b9 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,10 @@
2004-07-09 Michael Koch <konqueror@gmx.de>
+ * java/io/ObjectInputStream.java (readFields): Use long datatype
+ when shifting byte values more then 24 bits left.
+
+2004-07-09 Michael Koch <konqueror@gmx.de>
+
* java/util/zip/DeflaterOutputStream.java,
java/util/zip/GZIPInputStream.java,
java/util/zip/GZIPOutputStream.java,
diff --git a/libjava/java/io/ObjectInputStream.java b/libjava/java/io/ObjectInputStream.java
index 292f841a657..809e9b1c941 100644
--- a/libjava/java/io/ObjectInputStream.java
+++ b/libjava/java/io/ObjectInputStream.java
@@ -1332,10 +1332,10 @@ public class ObjectInputStream extends InputStream
int off = field.getOffset();
- return (long)(((prim_field_data[off++] & 0xFF) << 56)
- | ((prim_field_data[off++] & 0xFF) << 48)
- | ((prim_field_data[off++] & 0xFF) << 40)
- | ((prim_field_data[off++] & 0xFF) << 32)
+ return (long)(((prim_field_data[off++] & 0xFFL) << 56)
+ | ((prim_field_data[off++] & 0xFFL) << 48)
+ | ((prim_field_data[off++] & 0xFFL) << 40)
+ | ((prim_field_data[off++] & 0xFFL) << 32)
| ((prim_field_data[off++] & 0xFF) << 24)
| ((prim_field_data[off++] & 0xFF) << 16)
| ((prim_field_data[off++] & 0xFF) << 8)
@@ -1369,10 +1369,10 @@ public class ObjectInputStream extends InputStream
int off = field.getOffset();
return Double.longBitsToDouble
- ( (long) (((prim_field_data[off++] & 0xFF) << 56)
- | ((prim_field_data[off++] & 0xFF) << 48)
- | ((prim_field_data[off++] & 0xFF) << 40)
- | ((prim_field_data[off++] & 0xFF) << 32)
+ ( (long) (((prim_field_data[off++] & 0xFFL) << 56)
+ | ((prim_field_data[off++] & 0xFFL) << 48)
+ | ((prim_field_data[off++] & 0xFFL) << 40)
+ | ((prim_field_data[off++] & 0xFFL) << 32)
| ((prim_field_data[off++] & 0xFF) << 24)
| ((prim_field_data[off++] & 0xFF) << 16)
| ((prim_field_data[off++] & 0xFF) << 8)
OpenPOWER on IntegriCloud