Fix i18n_unumber_create usage 43/180843/2 accepted/tizen/unified/20180611.015502 submit/tizen/20180605.064324 submit/tizen/20180607.022853
authorHyunjee Kim <hj0426.kim@samsung.com>
Tue, 5 Jun 2018 00:45:07 +0000 (09:45 +0900)
committerhyunjee Kim <hj0426.kim@samsung.com>
Tue, 5 Jun 2018 06:39:47 +0000 (06:39 +0000)
Change-Id: Id282f44c7f6a904154c52c0cf7b1fd22a2ac5c75
Signed-off-by: Hyunjee Kim <hj0426.kim@samsung.com>
i18ninfo/i18ninfo.cpp

index 61b89e0..bf4e919 100644 (file)
@@ -607,6 +607,28 @@ static int __get_number_format(const char *input_number)
        for (i = I18N_UNUMBER_DECIMAL; i <= I18N_UNUMBER_FORMAT_STYLE_COUNT; ++i) {
                /* Create a number formatter. */
                ret = i18n_unumber_create((i18n_unumber_format_style_e)i, NULL, -1, default_locale, NULL, &num_format);
+               if ((i18n_unumber_format_style_e)i == I18N_UNUMBER_PATTERN_RULEBASED) {
+                       i18n_uchar pattern[1024];
+
+                       i18n_ustring_copy_ua(pattern,
+                                       "%standard:\n"
+                                       "-x: minus >>;\n"
+                                       "x.x: << point >>;\n"
+                                       "zero; one; two; three; four; five; six; seven; eight; nine;\n"
+                                       "ten; eleven; twelve; thirteen; fourteen; fifteen; sixteen;\n"
+                                       "seventeen; eighteen; nineteen;\n"
+                                       "20: twenty[->>];\n"
+                                       "30: thirty[->>];\n"
+                                       "40: forty[->>];\n"
+                                       "50: fifty[->>];\n"
+                                       "60: sixty[->>];\n"
+                                       "70: seventy[->>];\n"
+                                       "80: eighty[->>];\n"
+                                       "90: ninety[->>];\n"
+                                       "100: =#,##0=;\n");
+
+                       ret = i18n_unumber_create(I18N_UNUMBER_PATTERN_RULEBASED, pattern, -1, default_locale, NULL, &num_format);
+               }
                CHECK_ERROR("i18n_unumber_create", ret);
 
                /* Format the given number according to the given locale. */