Changeset 114224 in webkit
- Timestamp:
- Apr 15, 2012 11:12:05 PM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r114222 r114224 1 2012-04-15 Kent Tamura <tkent@chromium.org> 2 3 WebCore::weekDayShortLabels() for ICU always returns the fallback labels 4 https://bugs.webkit.org/show_bug.cgi?id=83991 5 6 Reviewed by Hajime Morita. 7 8 We need to specfiy 1-based index to udat_getSymbols() with 9 UDAT_SHORT_WEEKDAYS. Also, udat_countSymbols() with UDAT_SHORT_WEEKDAYS 10 returns 8. 11 12 No new tests because this behavior depends on locale setting. 13 14 * platform/text/LocalizedCalendarICU.cpp: 15 (WebCore::createLabelVector): Add startIndex argument. 16 (WebCore::createMonthLabels): 17 Pass UDAT_JANUARRY(0) as startIndex to createLabelVector(). 18 (WebCore::createWeekDayShortLabels): 19 Pass UDAT_SUNDAY(1) as startIndex to createLabelVector(). 20 1 21 2012-04-15 MORITA Hajime <morrita@google.com> 2 22 -
trunk/Source/WebCore/platform/text/LocalizedCalendarICU.cpp
r113416 r114224 80 80 } 81 81 82 static PassOwnPtr<Vector<String> > createLabelVector(UDateFormatSymbolType type, int32_t s ize)82 static PassOwnPtr<Vector<String> > createLabelVector(UDateFormatSymbolType type, int32_t startIndex, int32_t size) 83 83 { 84 84 ScopedDateFormat dateFormat; 85 85 if (!dateFormat.get()) 86 86 return PassOwnPtr<Vector<String> >(); 87 if (udat_countSymbols(dateFormat.get(), type) != s ize)87 if (udat_countSymbols(dateFormat.get(), type) != startIndex + size) 88 88 return PassOwnPtr<Vector<String> >(); 89 89 … … 92 92 for (int32_t i = 0; i < size; ++i) { 93 93 UErrorCode status = U_ZERO_ERROR; 94 int32_t length = udat_getSymbols(dateFormat.get(), type, i, 0, 0, &status);94 int32_t length = udat_getSymbols(dateFormat.get(), type, startIndex + i, 0, 0, &status); 95 95 if (status != U_BUFFER_OVERFLOW_ERROR) 96 96 return PassOwnPtr<Vector<String> >(); 97 97 Vector<UChar> buffer(length); 98 98 status = U_ZERO_ERROR; 99 udat_getSymbols(dateFormat.get(), type, i, buffer.data(), length, &status);99 udat_getSymbols(dateFormat.get(), type, startIndex + i, buffer.data(), length, &status); 100 100 if (U_FAILURE(status)) 101 101 return PassOwnPtr<Vector<String> >(); … … 107 107 static PassOwnPtr<Vector<String> > createMonthLabels() 108 108 { 109 OwnPtr<Vector<String> > labels = createLabelVector(UDAT_MONTHS, 12);109 OwnPtr<Vector<String> > labels = createLabelVector(UDAT_MONTHS, UCAL_JANUARY, 12); 110 110 return labels ? labels.release() : createFallbackMonthLabels(); 111 111 } … … 133 133 static PassOwnPtr<Vector<String> > createWeekDayShortLabels() 134 134 { 135 OwnPtr<Vector<String> > labels = createLabelVector(UDAT_SHORT_WEEKDAYS, 7);135 OwnPtr<Vector<String> > labels = createLabelVector(UDAT_SHORT_WEEKDAYS, UCAL_SUNDAY, 7); 136 136 return labels ? labels.release() : createFallbackWeekDayShortLabels(); 137 137 }
Note: See TracChangeset
for help on using the changeset viewer.