diff options
author | Xinchen Hui <laruence@php.net> | 2015-07-08 19:06:49 +0800 |
---|---|---|
committer | Xinchen Hui <laruence@php.net> | 2015-07-08 19:19:37 +0800 |
commit | 94957a7091d2d87d3b75c8395a3a11a4fbecaea1 (patch) | |
tree | 8deca3b59803a17c104a8ed275729c407cab8eb2 | |
parent | ca30d5bf3947922a618d95f1ae16886204f37292 (diff) | |
download | php-git-94957a7091d2d87d3b75c8395a3a11a4fbecaea1.tar.gz |
Fixed invalid read
-rw-r--r-- | ext/standard/exec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/standard/exec.c b/ext/standard/exec.c index 66d4537dab..4764f4bf33 100644 --- a/ext/standard/exec.c +++ b/ext/standard/exec.c @@ -115,7 +115,7 @@ PHPAPI int php_exec(int type, char *cmd, zval *array, zval *return_value TSRMLS_ } else if (type == 2) { /* strip trailing whitespaces */ l = bufl; - while (l-- && isspace(((unsigned char *)buf)[l])); + while (--l >= 0 && isspace(((unsigned char *)buf)[l])); if (l != (int)(bufl - 1)) { bufl = l + 1; buf[bufl] = '\0'; @@ -128,7 +128,7 @@ PHPAPI int php_exec(int type, char *cmd, zval *array, zval *return_value TSRMLS_ /* strip trailing whitespaces if we have not done so already */ if ((type == 2 && buf != b) || type != 2) { l = bufl; - while (l-- && isspace(((unsigned char *)buf)[l])); + while (--l >= 0 && isspace(((unsigned char *)buf)[l])); if (l != (int)(bufl - 1)) { bufl = l + 1; buf[bufl] = '\0'; |