From ce4fbb9952794b46e8c71134eb5edcb5666c34ea Mon Sep 17 00:00:00 2001 From: EgorBo Date: Mon, 16 Jul 2018 22:52:46 +0300 Subject: Cherry-pick changes from dotnet/corert --- src/System.Private.CoreLib/src/System/Number.Unix.cs | 8 ++++---- src/System.Private.CoreLib/src/System/Number.Windows.cs | 7 +++---- 2 files changed, 7 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/System.Private.CoreLib/src/System/Number.Unix.cs b/src/System.Private.CoreLib/src/System/Number.Unix.cs index 72f53f2c0..f9825b141 100644 --- a/src/System.Private.CoreLib/src/System/Number.Unix.cs +++ b/src/System.Private.CoreLib/src/System/Number.Unix.cs @@ -19,10 +19,10 @@ namespace System Debug.Assert(precision > 0 && precision < 40); number.precision = precision; - if (DoubleHelper.Exponent(value) == 0x7ff) + if (!Double.IsFinite(value)) { - number.scale = DoubleHelper.Mantissa(value) != 0 ? ScaleNAN : ScaleINF; - number.sign = DoubleHelper.Sign(value); + number.scale = Double.IsNaN(value) ? ScaleNAN : ScaleINF; + number.sign = Double.IsNegative(value); number.digits[0] = '\0'; return; } @@ -162,4 +162,4 @@ namespace System } } } -} +} \ No newline at end of file diff --git a/src/System.Private.CoreLib/src/System/Number.Windows.cs b/src/System.Private.CoreLib/src/System/Number.Windows.cs index f5180e99e..1d9e25a4e 100644 --- a/src/System.Private.CoreLib/src/System/Number.Windows.cs +++ b/src/System.Private.CoreLib/src/System/Number.Windows.cs @@ -12,10 +12,10 @@ namespace System private static unsafe void DoubleToNumber(double value, int precision, ref NumberBuffer number) { number.precision = precision; - if (DoubleHelper.Exponent(value) == 0x7ff) + if (!Double.IsFinite(value)) { - number.scale = DoubleHelper.Mantissa(value) != 0 ? ScaleNAN : ScaleINF; - number.sign = DoubleHelper.Sign(value); + number.scale = Double.IsNaN(value) ? ScaleNAN : ScaleINF; + number.sign = Double.IsNegative(value); number.digits[0] = '\0'; } else @@ -40,4 +40,3 @@ namespace System } } - -- cgit v1.2.3