summaryrefslogtreecommitdiff
path: root/ext/intl/locale/locale_methods.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/intl/locale/locale_methods.c')
-rw-r--r--ext/intl/locale/locale_methods.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/ext/intl/locale/locale_methods.c b/ext/intl/locale/locale_methods.c
index 21b5847f2d..f5be81f74a 100644
--- a/ext/intl/locale/locale_methods.c
+++ b/ext/intl/locale/locale_methods.c
@@ -724,7 +724,9 @@ PHP_FUNCTION( locale_get_keywords )
RETURN_FALSE;
}
- add_assoc_stringl( return_value, (char *)kw_key, kw_value , kw_value_len, 0);
+ // TODO: avoid reallocation ???
+ add_assoc_stringl( return_value, (char *)kw_key, kw_value , kw_value_len);
+ efree(kw_value);
} /* end of while */
} /* end of if e!=NULL */
@@ -1047,11 +1049,11 @@ static int add_array_entry(const char* loc_name, zval* hash_arr, char* key_name
}
cur_key_name = (char*)ecalloc( 25, 25);
sprintf( cur_key_name , "%s%d", key_name , cnt++);
- add_assoc_string( hash_arr, cur_key_name , token ,TRUE );
+ add_assoc_string( hash_arr, cur_key_name , token);
/* tokenize on the "_" or "-" and stop at singleton if any */
while( (token = php_strtok_r(NULL , DELIMITER , &last_ptr)) && (strlen(token)>1) ){
sprintf( cur_key_name , "%s%d", key_name , cnt++);
- add_assoc_string( hash_arr, cur_key_name , token , TRUE );
+ add_assoc_string( hash_arr, cur_key_name , token);
}
/*
if( strcmp(key_name, LOC_PRIVATE_TAG) == 0 ){
@@ -1060,7 +1062,7 @@ static int add_array_entry(const char* loc_name, zval* hash_arr, char* key_name
}
} else {
if( result == 1 ){
- add_assoc_string( hash_arr, key_name , key_value , TRUE );
+ add_assoc_string( hash_arr, key_name , key_value);
cur_result = 1;
}
}
@@ -1107,7 +1109,7 @@ PHP_FUNCTION(locale_parse)
grOffset = findOffset( LOC_GRANDFATHERED , loc_name );
if( grOffset >= 0 ){
- add_assoc_string( return_value , LOC_GRANDFATHERED_LANG_TAG , estrdup(loc_name) ,FALSE );
+ add_assoc_string( return_value , LOC_GRANDFATHERED_LANG_TAG , loc_name);
}
else{
/* Not grandfathered */
@@ -1164,10 +1166,10 @@ PHP_FUNCTION(locale_get_all_variants)
if( result > 0 && variant){
/* Tokenize on the "_" or "-" */
token = php_strtok_r( variant , DELIMITER , &saved_ptr);
- add_next_index_stringl( return_value, token , strlen(token) ,TRUE );
+ add_next_index_stringl( return_value, token , strlen(token));
/* tokenize on the "_" or "-" and stop at singleton if any */
while( (token = php_strtok_r(NULL , DELIMITER, &saved_ptr)) && (strlen(token)>1) ){
- add_next_index_stringl( return_value, token , strlen(token) ,TRUE );
+ add_next_index_stringl( return_value, token , strlen(token));
}
}
if( variant ){