components/desktop/firefox/patches/firefox-16-mftt_infinity.patch
author Petr Sumbera <petr.sumbera@oracle.com>
Mon, 05 Sep 2016 05:00:46 -0700
branchs11u3-sru
changeset 7035 4c2f26e9d5ab
permissions -rw-r--r--
24361911 Upgrade Firefox to version 45.4.0 ESR 23033044 firefox needs to be built with "--with-intl-api" option 24708365 problem in FIREFOX/BROWSER 24708614 problem in FIREFOX/BROWSER
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7035
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     1
We use a different function from the one in ieeefp.h.
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     2
This may be a studio specific patch. Need to investigate if this can be
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     3
removed.
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     4
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     5
diff --git a/mfbt/decimal/Decimal.cpp b/mfbt/decimal/Decimal.cpp
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     6
--- a/mfbt/decimal/Decimal.cpp
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     7
+++ b/mfbt/decimal/Decimal.cpp
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     8
@@ -33,6 +33,7 @@
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
     9
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    10
 #include <algorithm>
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    11
 #include <float.h>
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    12
+#include <ieeefp.h>
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    13
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    14
 using namespace moz_decimal_utils;
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    15
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    16
@@ -686,13 +687,13 @@
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    17
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    18
 Decimal Decimal::fromDouble(double doubleValue)
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    19
 {
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    20
-    if (std::isfinite(doubleValue))
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    21
+    if (finite(doubleValue))
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    22
         return fromString(mozToString(doubleValue));
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    23
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    24
-    if (std::isinf(doubleValue))
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    25
-        return infinity(doubleValue < 0 ? Negative : Positive);
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    26
+    if (isnand(doubleValue))
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    27
+        return nan();
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    28
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    29
-    return nan();
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    30
+    return infinity(doubleValue < 0 ? Negative : Positive);
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    31
 }
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    32
 
4c2f26e9d5ab 24361911 Upgrade Firefox to version 45.4.0 ESR
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    33
 Decimal Decimal::fromString(const String& str)