From ffe980b853f6c0fb5b09b911f1d7edb9d2b80cbc Mon Sep 17 00:00:00 2001 From: Hyunjee Kim Date: Tue, 5 Jun 2018 09:45:07 +0900 Subject: [PATCH] Fix i18n_unumber_create usage Change-Id: Id282f44c7f6a904154c52c0cf7b1fd22a2ac5c75 Signed-off-by: Hyunjee Kim --- i18ninfo/i18ninfo.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/i18ninfo/i18ninfo.cpp b/i18ninfo/i18ninfo.cpp index 61b89e0..bf4e919 100644 --- a/i18ninfo/i18ninfo.cpp +++ b/i18ninfo/i18ninfo.cpp @@ -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. */ -- 2.7.4