void LocaleICU::initializeCalendar() { if (m_weekDayShortLabels) return; if (!initializeShortDateFormat()) { m_firstDayOfWeek = 0; m_weekDayShortLabels = createFallbackWeekDayShortLabels(); return; } m_firstDayOfWeek = ucal_getAttribute(udat_getCalendar(m_shortDateFormat), UCAL_FIRST_DAY_OF_WEEK) - UCAL_SUNDAY; m_weekDayShortLabels = createLabelVector(m_shortDateFormat, UDAT_SHORT_WEEKDAYS, UCAL_SUNDAY, 7); if (!m_weekDayShortLabels) m_weekDayShortLabels = createFallbackWeekDayShortLabels(); }
static PassOwnPtr<Vector<String> > createWeekDayShortLabels() { OwnPtr<Vector<String> > labels = createLabelVector(UDAT_SHORT_WEEKDAYS, 7); return labels ? labels.release() : createFallbackWeekDayShortLabels(); }