com php-src: Fixed segfault in ext/standard/tests/strings/add-and-stripslashes.phpt: ext/standard/string.c
| From: | Dmitry Stogov | Date: | Fri, 21 Feb 2014 08:39:59 +0000 |
| Subject: | com php-src: Fixed segfault in ext/standard/tests/strings/add-and-stripslashes.phpt: ext/standard/string.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-78043@lists.php.net to get a copy of this message | ||
Commit: 8211026fa7d34b34262d7a3d84395bd83aeb74f4
Author: Xinchen Hui <laruence@gmail.com> Fri, 21 Feb 2014 16:39:59 +0800
Parents: 29e2ce597be8aad45f009cf72b1b6c2b8681de23
Branches: phpng
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=8211026fa7d34b34262d7a3d84395bd83aeb74f4
Log:
Fixed segfault in ext/standard/tests/strings/add-and-stripslashes.phpt
Changed paths:
M ext/standard/string.c
Diff:
diff --git a/ext/standard/string.c b/ext/standard/string.c
index 6a96b3c..8aa0d59 100644
--- a/ext/standard/string.c
+++ b/ext/standard/string.c
@@ -3318,8 +3318,8 @@ PHP_FUNCTION(addcslashes)
Escapes single quote, double quotes and backslash characters in a string with backslashes */
PHP_FUNCTION(addslashes)
{
- char *str;
- int str_len;
+ char *str, *new_str;
+ int str_len, new_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &str, &str_len) ==
FAILURE) {
return;
@@ -3333,10 +3333,9 @@ PHP_FUNCTION(addslashes)
//??? str_len,
//??? &Z_STRLEN_P(return_value), 0
//??? TSRMLS_CC), 0);
- RETURN_STRING(php_addslashes(str,
- str_len,
- &Z_STRLEN_P(return_value), 0
- TSRMLS_CC));
+ new_str = php_addslashes(str, str_len, &new_len, 0 TSRMLS_CC);
+ RETVAL_STRINGL(new_str, new_len);
+ efree(new_str);
}
/* }}} */