i18n_error_code_e status = I18N_ERROR_NONE;
i18n_uchar displayName[SETTING_STR_SLP_LEN] = {0, };
char *timezone_str = NULL;
- int32_t buf_size_needed;
+ int32_t buf_size_needed = 0;
+ i18n_ubool isIn = false;
const char *localeID = NULL;
i18n_ulocale_get_default(&localeID);
/* get timezone display name (check dst) */
if (cal) {
- if (pdata)
- status = i18n_ucalendar_get_timezone_displayname(cal,
+ if (pdata) {
+ i18n_ucalendar_is_in_daylight_time(cal, &isIn);
+ if (isIn)
+ status = i18n_ucalendar_get_timezone_displayname(cal,
I18N_UCALENDAR_DST,
localeID, displayName,
SETTING_STR_SLP_LEN, &buf_size_needed);
+ else
+ status = i18n_ucalendar_get_timezone_displayname(cal,
+ I18N_UCALENDAR_STANDARD,
+ localeID, displayName,
+ SETTING_STR_SLP_LEN, &buf_size_needed);
+ }
if (I18N_ERROR_NONE != status) {
SETTING_TRACE_ERROR("i18n_ucalendar_get_timezone_displayname got "