gecko-dev/mfbt/double-conversion/ToPrecision-exponential.patch
Jeff Walden 645ca06a98 Bug 1332797 - Move mfbt/double-conversion source files into a new source/ subdirectory, to segregate upstream files from update.sh and our local patches. r=froydnj
--HG--
rename : mfbt/double-conversion/LICENSE => mfbt/double-conversion/source/LICENSE
rename : mfbt/double-conversion/README => mfbt/double-conversion/source/README
rename : mfbt/double-conversion/bignum-dtoa.cc => mfbt/double-conversion/source/bignum-dtoa.cc
rename : mfbt/double-conversion/bignum-dtoa.h => mfbt/double-conversion/source/bignum-dtoa.h
rename : mfbt/double-conversion/bignum.cc => mfbt/double-conversion/source/bignum.cc
rename : mfbt/double-conversion/bignum.h => mfbt/double-conversion/source/bignum.h
rename : mfbt/double-conversion/cached-powers.cc => mfbt/double-conversion/source/cached-powers.cc
rename : mfbt/double-conversion/cached-powers.h => mfbt/double-conversion/source/cached-powers.h
rename : mfbt/double-conversion/diy-fp.cc => mfbt/double-conversion/source/diy-fp.cc
rename : mfbt/double-conversion/diy-fp.h => mfbt/double-conversion/source/diy-fp.h
rename : mfbt/double-conversion/double-conversion.cc => mfbt/double-conversion/source/double-conversion.cc
rename : mfbt/double-conversion/double-conversion.h => mfbt/double-conversion/source/double-conversion.h
rename : mfbt/double-conversion/fast-dtoa.cc => mfbt/double-conversion/source/fast-dtoa.cc
rename : mfbt/double-conversion/fast-dtoa.h => mfbt/double-conversion/source/fast-dtoa.h
rename : mfbt/double-conversion/fixed-dtoa.cc => mfbt/double-conversion/source/fixed-dtoa.cc
rename : mfbt/double-conversion/fixed-dtoa.h => mfbt/double-conversion/source/fixed-dtoa.h
rename : mfbt/double-conversion/ieee.h => mfbt/double-conversion/source/ieee.h
rename : mfbt/double-conversion/strtod.cc => mfbt/double-conversion/source/strtod.cc
rename : mfbt/double-conversion/strtod.h => mfbt/double-conversion/source/strtod.h
rename : mfbt/double-conversion/utils.h => mfbt/double-conversion/source/utils.h
extra : rebase_source : e84171373b2f766698ea48d23484ed05463a4d8a
2017-01-23 15:11:50 -08:00

36 lines
1.7 KiB
Diff

1e7bf0c636b8cca54dd83456a0f8fa219343e2a1 Bug 608195 - part 2 - extend ToPrecision to tell use whether exponential notation was used
diff --git a/mfbt/double-conversion/source/double-conversion.cc b/mfbt/double-conversion/source/double-conversion.cc
index febba6c..394b6a0 100644
--- a/mfbt/double-conversion/source/double-conversion.cc
+++ b/mfbt/double-conversion/source/double-conversion.cc
@@ -283,7 +283,9 @@ bool DoubleToStringConverter::ToExponential(
bool DoubleToStringConverter::ToPrecision(double value,
int precision,
+ bool* used_exponential_notation,
StringBuilder* result_builder) const {
+ *used_exponential_notation = false;
if (Double(value).IsSpecial()) {
return HandleSpecialValues(value, result_builder);
}
@@ -325,6 +327,7 @@ bool DoubleToStringConverter::ToPrecision(double value,
decimal_rep[i] = '0';
}
+ *used_exponential_notation = true;
CreateExponentialRepresentation(decimal_rep,
precision,
exponent,
diff --git a/mfbt/double-conversion/source/double-conversion.h b/mfbt/double-conversion/source/double-conversion.h
index 0900ba0..957575c 100644
--- a/mfbt/double-conversion/source/double-conversion.h
+++ b/mfbt/double-conversion/source/double-conversion.h
@@ -270,6 +270,7 @@ class DoubleToStringConverter {
// exponent character, the exponent's sign, and at most 3 exponent digits).
MFBT_API bool ToPrecision(double value,
int precision,
+ bool* used_exponential_notation,
StringBuilder* result_builder) const;
enum DtoaMode {