| 1e7bf0c636b8cca54dd83456a0f8fa219343e2a1 Bug 608195 - part 2 - extend ToPrecision to tell use whether exponential notation was used |
| diff --git a/mfbt/double-conversion/double-conversion.cc b/mfbt/double-conversion/double-conversion.cc |
| index febba6c..394b6a0 100644 |
| --- a/mfbt/double-conversion/double-conversion.cc |
| +++ b/mfbt/double-conversion/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/double-conversion.h b/mfbt/double-conversion/double-conversion.h |
| index 0900ba0..957575c 100644 |
| --- a/mfbt/double-conversion/double-conversion.h |
| +++ b/mfbt/double-conversion/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 { |