From 31d6f7db9bda9d9abc8e0acfb18b5d637818495f Mon Sep 17 00:00:00 2001 From: Hyunjee Kim Date: Mon, 15 Jan 2018 10:54:07 +0900 Subject: [PATCH] [i18ninfo] Fix bug in date and time menu Change-Id: I3db174908fb997b84be246f4b921b52a05fe9cb8 Signed-off-by: Hyunjee Kim --- i18ninfo/i18ninfo.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/i18ninfo/i18ninfo.cpp b/i18ninfo/i18ninfo.cpp index 5168ad3..712de6b 100644 --- a/i18ninfo/i18ninfo.cpp +++ b/i18ninfo/i18ninfo.cpp @@ -34,7 +34,6 @@ static int ASCIIDOC_FLAG = 0; const char *default_locale = I18N_ULOCALE_UK; -i18n_uchar default_timezone_id[BUF_SIZE] = {0, }; i18n_udate_format_style_e eTimeFormatStyle[] = { I18N_UDATE_FULL, @@ -512,6 +511,16 @@ static int __get_date_and_time(char *input_time) i18n_uchar format[BUF_SIZE]; i18n_ustring_copy_ua_n(format, "ddMMMyyyyHHmmssz", BUF_SIZE); + /* To get default time zone id */ + i18n_timezone_h tmz; + char *timezone_id; + i18n_uchar default_timezone_id[BUF_SIZE] = {0, }; + + ret = i18n_timezone_create_default(&tmz); + CHECK_ERROR("18n_timezone_create_default", ret); + ret = i18n_timezone_get_id(tmz, &timezone_id); + i18n_ustring_copy_ua_n(default_timezone_id, timezone_id, strlen(timezone_id)); + int pattern_len, len; i18n_uchar pattern[BUF_SIZE], skeleton[BUF_SIZE]; i18n_ustring_copy_ua(skeleton, I18N_UDATE_MONTH_DAY); @@ -524,7 +533,6 @@ static int __get_date_and_time(char *input_time) printf("| %-17.17s | %-26.26s | %s \n", "TIME TYPE" , "DATE TYPE" , "OUTPUT"); for (n_enum_date_counter = 0; n_enum_date_counter < n_date_enum_size; n_enum_date_counter++) { for (n_enum_time_counter = 0; n_enum_time_counter < n_time_enum_size; n_enum_time_counter++) { - i18n_ustring_copy_ua_n(default_timezone_id, default_locale, BUF_SIZE); ret = i18n_udate_create(eTimeFormatStyle[n_enum_time_counter], eDateFormatStyle[n_enum_date_counter], default_locale, default_timezone_id, -1, pattern, -1, &format_h); @@ -548,6 +556,10 @@ static int __get_date_and_time(char *input_time) } } + /* Release the time zone object. */ + ret = i18n_timezone_destroy(tmz); + CHECK_ERROR("i18n_timezone_destroy", ret); + free(timezone_id); PRINT_ASCIIDOC_LOG("|===\n"); return 0; } -- 2.7.4