summaryrefslogtreecommitdiff
path: root/ext/standard/exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/exec.c')
-rw-r--r--ext/standard/exec.c48
1 files changed, 24 insertions, 24 deletions
diff --git a/ext/standard/exec.c b/ext/standard/exec.c
index d13ac454ad..55d777cb92 100644
--- a/ext/standard/exec.c
+++ b/ext/standard/exec.c
@@ -262,7 +262,7 @@ PHPAPI zend_string *php_escape_shell_cmd(char *str)
if (mb_len < 0) {
continue;
} else if (mb_len > 1) {
- memcpy(cmd->val + y, str + x, mb_len);
+ memcpy(ZSTR_VAL(cmd) + y, str + x, mb_len);
y += mb_len;
x += mb_len - 1;
continue;
@@ -277,9 +277,9 @@ PHPAPI zend_string *php_escape_shell_cmd(char *str)
} else if (p && *p == str[x]) {
p = NULL;
} else {
- cmd->val[y++] = '\\';
+ ZSTR_VAL(cmd)[y++] = '\\';
}
- cmd->val[y++] = str[x];
+ ZSTR_VAL(cmd)[y++] = str[x];
break;
#else
/* % is Windows specific for environmental variables, ^%PATH% will
@@ -312,17 +312,17 @@ PHPAPI zend_string *php_escape_shell_cmd(char *str)
case '\x0A': /* excluding these two */
case '\xFF':
#ifdef PHP_WIN32
- cmd->val[y++] = '^';
+ ZSTR_VAL(cmd)[y++] = '^';
#else
- cmd->val[y++] = '\\';
+ ZSTR_VAL(cmd)[y++] = '\\';
#endif
/* fall-through */
default:
- cmd->val[y++] = str[x];
+ ZSTR_VAL(cmd)[y++] = str[x];
}
}
- cmd->val[y] = '\0';
+ ZSTR_VAL(cmd)[y] = '\0';
if ((estimate - y) > 4096) {
/* realloc if the estimate was way overill
@@ -330,7 +330,7 @@ PHPAPI zend_string *php_escape_shell_cmd(char *str)
cmd = zend_string_truncate(cmd, y, 0);
}
- cmd->len = y;
+ ZSTR_LEN(cmd) = y;
return cmd;
}
@@ -348,9 +348,9 @@ PHPAPI zend_string *php_escape_shell_arg(char *str)
cmd = zend_string_alloc(4 * l + 2, 0); /* worst case */
#ifdef PHP_WIN32
- cmd->val[y++] = '"';
+ ZSTR_VAL(cmd)[y++] = '"';
#else
- cmd->val[y++] = '\'';
+ ZSTR_VAL(cmd)[y++] = '\'';
#endif
for (x = 0; x < l; x++) {
@@ -360,7 +360,7 @@ PHPAPI zend_string *php_escape_shell_arg(char *str)
if (mb_len < 0) {
continue;
} else if (mb_len > 1) {
- memcpy(cmd->val + y, str + x, mb_len);
+ memcpy(ZSTR_VAL(cmd) + y, str + x, mb_len);
y += mb_len;
x += mb_len - 1;
continue;
@@ -371,40 +371,40 @@ PHPAPI zend_string *php_escape_shell_arg(char *str)
case '"':
case '%':
case '!':
- cmd->val[y++] = ' ';
+ ZSTR_VAL(cmd)[y++] = ' ';
break;
#else
case '\'':
- cmd->val[y++] = '\'';
- cmd->val[y++] = '\\';
- cmd->val[y++] = '\'';
+ ZSTR_VAL(cmd)[y++] = '\'';
+ ZSTR_VAL(cmd)[y++] = '\\';
+ ZSTR_VAL(cmd)[y++] = '\'';
#endif
/* fall-through */
default:
- cmd->val[y++] = str[x];
+ ZSTR_VAL(cmd)[y++] = str[x];
}
}
#ifdef PHP_WIN32
- if (y > 0 && '\\' == cmd->val[y - 1]) {
+ if (y > 0 && '\\' == ZSTR_VAL(cmd)[y - 1]) {
int k = 0, n = y - 1;
- for (; n >= 0 && '\\' == cmd->val[n]; n--, k++);
+ for (; n >= 0 && '\\' == ZSTR_VAL(cmd)[n]; n--, k++);
if (k % 2) {
- cmd->val[y++] = '\\';
+ ZSTR_VAL(cmd)[y++] = '\\';
}
}
- cmd->val[y++] = '"';
+ ZSTR_VAL(cmd)[y++] = '"';
#else
- cmd->val[y++] = '\'';
+ ZSTR_VAL(cmd)[y++] = '\'';
#endif
- cmd->val[y] = '\0';
+ ZSTR_VAL(cmd)[y] = '\0';
if ((estimate - y) > 4096) {
/* realloc if the estimate was way overill
* Arbitrary cutoff point of 4096 */
cmd = zend_string_truncate(cmd, y, 0);
}
- cmd->len = y;
+ ZSTR_LEN(cmd) = y;
return cmd;
}
/* }}} */
@@ -472,7 +472,7 @@ PHP_FUNCTION(shell_exec)
ret = php_stream_copy_to_mem(stream, PHP_STREAM_COPY_ALL, 0);
php_stream_close(stream);
- if (ret && ret->len > 0) {
+ if (ret && ZSTR_LEN(ret) > 0) {
RETVAL_STR(ret);
}
}