From: Sascha Schumann Date: Sun, 21 Nov 1999 20:08:43 +0000 (+0000) Subject: (PHP urldecode) Fix for #2788, function changed parameter in place X-Git-Tag: PRE_RETURN_REF_PATCH~322 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=11030ee410abf71efdef478bcbe6e5dead9f76c1;p=php (PHP urldecode) Fix for #2788, function changed parameter in place --- diff --git a/ext/standard/url.c b/ext/standard/url.c index 315e088065..23eb24bc38 100644 --- a/ext/standard/url.c +++ b/ext/standard/url.c @@ -297,9 +297,12 @@ PHP_FUNCTION(urldecode) var_reset(return_value); return; } - len = _php3_urldecode((*arg)->value.str.val, (*arg)->value.str.len); - RETVAL_STRINGL((*arg)->value.str.val, len, 1); + *return_value = **arg; + zval_copy_ctor(return_value); + + len = _php3_urldecode(return_value->value.str.val, return_value->value.str.len); + return_value->value.str.len = len; } /* }}} */