diff options
author | senorblanco@chromium.org <senorblanco@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-24 06:26:38 +0000 |
---|---|---|
committer | senorblanco@chromium.org <senorblanco@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-24 06:26:38 +0000 |
commit | 9964e970e1b961edc97d6ab97cc9f7b5d91fca92 (patch) | |
tree | eb426c252eac953539da3c864fe13c88ca5b815a /content | |
parent | 41a8df2e8df99a0307853fc264e11cde982bfeef (diff) | |
download | chromium_src-9964e970e1b961edc97d6ab97cc9f7b5d91fca92.zip chromium_src-9964e970e1b961edc97d6ab97cc9f7b5d91fca92.tar.gz chromium_src-9964e970e1b961edc97d6ab97cc9f7b5d91fca92.tar.bz2 |
When using the week-of-year syntax, don't construct an intermediate time value when formatting; use the calendar directly. Otherwise the default calendar constructed for formatting will use the wrong week-of-year rules.
BUG=253231
TBR=keishi
Review URL: https://chromiumcodereview.appspot.com/17574002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208155 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r-- | content/renderer/date_time_formatter.cc | 3 | ||||
-rw-r--r-- | content/renderer/date_time_formatter_unittest.cc | 5 |
2 files changed, 3 insertions, 5 deletions
diff --git a/content/renderer/date_time_formatter.cc b/content/renderer/date_time_formatter.cc index 3b976b8..f9d02ed 100644 --- a/content/renderer/date_time_formatter.cc +++ b/content/renderer/date_time_formatter.cc @@ -130,10 +130,9 @@ const std::string DateTimeFormatter::FormatString() const { calendar.set(UCAL_MINUTE, minute_); calendar.set(UCAL_SECOND, second_); } - UDate time = calendar.getTime(success); icu::SimpleDateFormat formatter(*pattern_, success); icu::UnicodeString formatted_time; - formatter.format(time, formatted_time, success); + formatter.format(calendar, formatted_time, NULL, success); UTF16ToUTF8(formatted_time.getBuffer(), static_cast<size_t>(formatted_time.length()), &result); diff --git a/content/renderer/date_time_formatter_unittest.cc b/content/renderer/date_time_formatter_unittest.cc index c40160e..b5afc1c 100644 --- a/content/renderer/date_time_formatter_unittest.cc +++ b/content/renderer/date_time_formatter_unittest.cc @@ -138,9 +138,8 @@ TEST(RendererDateTimePickerTest, TestParserValidDateInputs) { 2013, 3, 23, 15, 47, 0, 0, 0); EXPECT_EQ("2013-04-23T15:47", sut2.GetFormattedValue()); - // Disabling this case due to crbug.com/253231 - //DateTimeFormatter sut3(ui::TEXT_INPUT_TYPE_WEEK, 0, 0, 0, 0, 0, 0, 2012, 2); - //EXPECT_EQ("2012-W02", sut3.GetFormattedValue()); + DateTimeFormatter sut3(ui::TEXT_INPUT_TYPE_WEEK, 0, 0, 0, 0, 0, 0, 2012, 2); + EXPECT_EQ("2012-W02", sut3.GetFormattedValue()); } TEST(RendererDateTimePickerTest, TestParserInvalidDateInputs) { |