summaryrefslogtreecommitdiff
path: root/ext/mbstring
diff options
context:
space:
mode:
authorStefan Esser <sesser@php.net>2004-06-26 07:57:37 +0000
committerStefan Esser <sesser@php.net>2004-06-26 07:57:37 +0000
commitff716cbd3ec2875b6eb407c8b9c6db6659c2f48d (patch)
tree71fd50fb3244dfe4221d9bfc0018bca107dbd542 /ext/mbstring
parent9e5ea7d229a434b36fac9970ce172aed4251159f (diff)
downloadphp-git-ff716cbd3ec2875b6eb407c8b9c6db6659c2f48d.tar.gz
Fixed input_filter functions need emalloc()ed values.
Diffstat (limited to 'ext/mbstring')
-rw-r--r--ext/mbstring/mb_gpc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ext/mbstring/mb_gpc.c b/ext/mbstring/mb_gpc.c
index 61c635b280..a58c63ac56 100644
--- a/ext/mbstring/mb_gpc.c
+++ b/ext/mbstring/mb_gpc.c
@@ -343,10 +343,14 @@ int _php_mb_encoding_handler_ex(int data_type, zval *arg, char *res, char *separ
val_len = len_list[n];
}
n++;
+ /* we need val to be emalloc()ed */
+ val = estrndup(val, val_len);
if (sapi_module.input_filter(data_type, var, &val, val_len, &new_val_len TSRMLS_CC)) {
/* add variable to symbol table */
php_register_variable_safe(var, val, new_val_len, array_ptr TSRMLS_CC);
}
+ efree(val);
+
if (convd != NULL){
mbfl_string_clear(&resvar);
mbfl_string_clear(&resval);