mirror of
https://github.com/php/php-src.git
synced 2024-09-22 18:37:25 +00:00
MFB: Restore support for unquoted -d options
This commit is contained in:
parent
d365bd66c2
commit
12b0b6368a
@ -1028,12 +1028,26 @@ int main(int argc, char *argv[])
|
||||
case 'd': {
|
||||
/* define ini entries on command line */
|
||||
int len = strlen(php_optarg);
|
||||
char *val;
|
||||
|
||||
if (strchr(php_optarg, '=')) {
|
||||
cgi_sapi_module.ini_entries = realloc(cgi_sapi_module.ini_entries, ini_entries_len + len + sizeof("\n\0"));
|
||||
memcpy(cgi_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
memcpy(cgi_sapi_module.ini_entries + ini_entries_len + len, "\n\0", sizeof("\n\0"));
|
||||
ini_entries_len += len + sizeof("\n\0") - 2;
|
||||
if ((val = strchr(php_optarg, '='))) {
|
||||
val++;
|
||||
if (!isalnum(*val) && *val != '"' && *val != '\'' && *val != '\0') {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("\"\"\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, (val - php_optarg));
|
||||
ini_entries_len += (val - php_optarg);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, "\"", 1);
|
||||
ini_entries_len++;
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, val, len - (val - php_optarg));
|
||||
ini_entries_len += len - (val - php_optarg);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, "\"\n\0", sizeof("\"\n\0"));
|
||||
ini_entries_len += sizeof("\n\0\"") - 2;
|
||||
} else {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len + len, "\n\0", sizeof("\n\0"));
|
||||
ini_entries_len += len + sizeof("\n\0") - 2;
|
||||
}
|
||||
} else {
|
||||
cgi_sapi_module.ini_entries = realloc(cgi_sapi_module.ini_entries, ini_entries_len + len + sizeof("=1\n\0"));
|
||||
memcpy(cgi_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
|
@ -655,12 +655,26 @@ int main(int argc, char *argv[])
|
||||
case 'd': {
|
||||
/* define ini entries on command line */
|
||||
int len = strlen(php_optarg);
|
||||
char *val;
|
||||
|
||||
if (strchr(php_optarg, '=')) {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len + len, "\n\0", sizeof("\n\0"));
|
||||
ini_entries_len += len + sizeof("\n\0") - 2;
|
||||
if ((val = strchr(php_optarg, '='))) {
|
||||
val++;
|
||||
if (!isalnum(*val) && *val != '"' && *val != '\'' && *val != '\0') {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("\"\"\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, (val - php_optarg));
|
||||
ini_entries_len += (val - php_optarg);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, "\"", 1);
|
||||
ini_entries_len++;
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, val, len - (val - php_optarg));
|
||||
ini_entries_len += len - (val - php_optarg);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, "\"\n\0", sizeof("\"\n\0"));
|
||||
ini_entries_len += sizeof("\n\0\"") - 2;
|
||||
} else {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len + len, "\n\0", sizeof("\n\0"));
|
||||
ini_entries_len += len + sizeof("\n\0") - 2;
|
||||
}
|
||||
} else {
|
||||
cli_sapi_module.ini_entries = realloc(cli_sapi_module.ini_entries, ini_entries_len + len + sizeof("=1\n\0"));
|
||||
memcpy(cli_sapi_module.ini_entries + ini_entries_len, php_optarg, len);
|
||||
|
Loading…
Reference in New Issue
Block a user