aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang/natFloat.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/lang/natFloat.cc')
-rw-r--r--libjava/java/lang/natFloat.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/libjava/java/lang/natFloat.cc b/libjava/java/lang/natFloat.cc
index e3189be..5712fd4 100644
--- a/libjava/java/lang/natFloat.cc
+++ b/libjava/java/lang/natFloat.cc
@@ -24,6 +24,12 @@ java::lang::Float::floatToIntBits(jfloat value)
{
union u u;
u.d = value;
+ jint e = u.l & 0x7f800000;
+ jint f = u.l & 0x007fffff;
+
+ if (e == 0x7f800000 && f != 0)
+ u.l = 0x7fc00000;
+
return u.l;
}