| Index: base/i18n/number_formatting.cc
|
| diff --git a/base/i18n/number_formatting.cc b/base/i18n/number_formatting.cc
|
| index 6f454a0848bdb3aa7fe0c1d3f5aafbb04be58030..b5108334846099eb66d8913b905d61d3391b94f0 100644
|
| --- a/base/i18n/number_formatting.cc
|
| +++ b/base/i18n/number_formatting.cc
|
| @@ -9,6 +9,7 @@
|
| #include <memory>
|
|
|
| #include "base/format_macros.h"
|
| +#include "base/i18n/message_formatter.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/logging.h"
|
| #include "base/strings/string_util.h"
|
| @@ -54,7 +55,7 @@ string16 FormatNumber(int64_t number) {
|
|
|
| if (!number_format) {
|
| // As a fallback, just return the raw number in a string.
|
| - return UTF8ToUTF16(StringPrintf("%" PRId64, number));
|
| + return ASCIIToUTF16(StringPrintf("%" PRId64, number));
|
| }
|
| icu::UnicodeString ustr;
|
| number_format->format(number, ustr);
|
| @@ -68,7 +69,7 @@ string16 FormatDouble(double number, int fractional_digits) {
|
|
|
| if (!number_format) {
|
| // As a fallback, just return the raw number in a string.
|
| - return UTF8ToUTF16(StringPrintf("%f", number));
|
| + return ASCIIToUTF16(StringPrintf("%f", number));
|
| }
|
| number_format->setMaximumFractionDigits(fractional_digits);
|
| number_format->setMinimumFractionDigits(fractional_digits);
|
| @@ -78,6 +79,11 @@ string16 FormatDouble(double number, int fractional_digits) {
|
| return string16(ustr.getBuffer(), static_cast<size_t>(ustr.length()));
|
| }
|
|
|
| +string16 FormatPercent(int number) {
|
| + return i18n::MessageFormatter::FormatWithNumberedArgs(
|
| + ASCIIToUTF16("{0,number,percent}"), static_cast<double>(number) / 100.0);
|
| +}
|
| +
|
| namespace testing {
|
|
|
| void ResetFormatters() {
|
|
|