diff options
author | Anatol Belski <ab@php.net> | 2016-10-12 20:52:46 +0200 |
---|---|---|
committer | Anatol Belski <ab@php.net> | 2016-10-13 00:50:58 +0200 |
commit | 4094e54c26715df1ed8d7ad9a9b8b1347042c34a (patch) | |
tree | b284a0d14af926c8e2bf9c28f26612a49a50c5d4 | |
parent | 85998b2a7ec2424a5dd7ccbfdb328e4c2c38fb31 (diff) | |
download | php-git-4094e54c26715df1ed8d7ad9a9b8b1347042c34a.tar.gz |
update len in fallback cases
(cherry picked from commit 58b18892bf3db0adf2a01f92adb4c907700fbbdd)
-rw-r--r-- | ext/intl/locale/locale_methods.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/intl/locale/locale_methods.c b/ext/intl/locale/locale_methods.c index eaf113a97e..18a051fe20 100644 --- a/ext/intl/locale/locale_methods.c +++ b/ext/intl/locale/locale_methods.c @@ -405,6 +405,7 @@ static void get_icu_value_src_php( char* tag_name, INTERNAL_FUNCTION_PARAMETERS) if(loc_name_len == 0) { loc_name = intl_locale_get_default(); + loc_name_len = strlen(loc_name); } INTL_CHECK_LOCALE_LEN(loc_name_len); @@ -1169,6 +1170,7 @@ PHP_FUNCTION(locale_get_all_variants) if(loc_name_len == 0) { loc_name = intl_locale_get_default(); + loc_name_len = strlen(loc_name); } INTL_CHECK_LOCALE_LEN(loc_name_len); @@ -1274,6 +1276,7 @@ PHP_FUNCTION(locale_filter_matches) if(loc_range_len == 0) { loc_range = intl_locale_get_default(); + loc_range_len = strlen(loc_range); } if( strcmp(loc_range,"*")==0){ @@ -1557,8 +1560,10 @@ PHP_FUNCTION(locale_lookup) if(loc_range_len == 0) { if(fallback_loc_str) { loc_range = ZSTR_VAL(fallback_loc_str); + loc_range_len = ZSTR_LEN(fallback_loc_str); } else { loc_range = intl_locale_get_default(); + loc_range_len = strlen(loc_range); } } |