summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/recode/recode.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/recode/recode.c b/ext/recode/recode.c
index 206154522e..6a6863881d 100644
--- a/ext/recode/recode.c
+++ b/ext/recode/recode.c
@@ -111,6 +111,7 @@ PHP_FUNCTION(recode_string)
pval **str;
pval **req;
bool success;
+ int r_len=0, r_alen =0;
ReSLS_FETCH();
if (ZEND_NUM_ARGS() != 2
@@ -132,13 +133,13 @@ PHP_FUNCTION(recode_string)
goto error_exit;
}
- r = recode_string(request, (*str)->value.str.val);
+ recode_buffer_to_buffer(request, Z_STRVAL_PP(str), Z_STRLEN_PP(str), &r, &r_len, &r_alen);
if (!r) {
php_error(E_WARNING, "Recoding failed.");
goto error_exit;
}
- RETVAL_STRING(r, 1);
+ RETVAL_STRINGL(r, r_len, 1);
free(r);
/* FALLTHROUGH */