mirror of
https://github.com/php/php-src.git
synced 2024-11-29 12:53:37 +08:00
Merge branch 'PHP-7.0' into PHP-7.1
This commit is contained in:
commit
f8c2089651
@ -1392,6 +1392,7 @@ int main(int argc, char **argv) /* {{{ */
|
|||||||
int exit_status;
|
int exit_status;
|
||||||
char *read_from_stdin = NULL;
|
char *read_from_stdin = NULL;
|
||||||
zend_string *backup_phpdbg_compile = NULL;
|
zend_string *backup_phpdbg_compile = NULL;
|
||||||
|
zend_bool show_help = 0, show_version = 0;
|
||||||
|
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
struct sigaction sigio_struct;
|
struct sigaction sigio_struct;
|
||||||
@ -1581,36 +1582,11 @@ phpdbg_main:
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case 'h': {
|
case 'h': {
|
||||||
ZEND_INIT_MODULE_GLOBALS(phpdbg, php_phpdbg_globals_ctor, NULL);
|
show_help = 1;
|
||||||
sapi_startup(phpdbg);
|
|
||||||
phpdbg->startup(phpdbg);
|
|
||||||
PHPDBG_G(flags) = 0;
|
|
||||||
/* It ain't gonna proceed to real execution anyway,
|
|
||||||
but the correct descriptor is needed already. */
|
|
||||||
PHPDBG_G(io)[PHPDBG_STDOUT].ptr = stdout;
|
|
||||||
PHPDBG_G(io)[PHPDBG_STDOUT].fd = fileno(stdout);
|
|
||||||
phpdbg_set_prompt(PHPDBG_DEFAULT_PROMPT);
|
|
||||||
phpdbg_do_help(NULL);
|
|
||||||
sapi_deactivate();
|
|
||||||
sapi_shutdown();
|
|
||||||
return 0;
|
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
case 'V': {
|
case 'V': {
|
||||||
ZEND_INIT_MODULE_GLOBALS(phpdbg, php_phpdbg_globals_ctor, NULL);
|
show_version = 1;
|
||||||
sapi_startup(phpdbg);
|
|
||||||
phpdbg->startup(phpdbg);
|
|
||||||
printf(
|
|
||||||
"phpdbg %s (built: %s %s)\nPHP %s, Copyright (c) 1997-2016 The PHP Group\n%s",
|
|
||||||
PHPDBG_VERSION,
|
|
||||||
__DATE__,
|
|
||||||
__TIME__,
|
|
||||||
PHP_VERSION,
|
|
||||||
get_zend_version()
|
|
||||||
);
|
|
||||||
sapi_deactivate();
|
|
||||||
sapi_shutdown();
|
|
||||||
return 0;
|
|
||||||
} break;
|
} break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1678,6 +1654,14 @@ phpdbg_main:
|
|||||||
|
|
||||||
ZEND_INIT_MODULE_GLOBALS(phpdbg, php_phpdbg_globals_ctor, NULL);
|
ZEND_INIT_MODULE_GLOBALS(phpdbg, php_phpdbg_globals_ctor, NULL);
|
||||||
|
|
||||||
|
/* set default colors */
|
||||||
|
phpdbg_set_color_ex(PHPDBG_COLOR_PROMPT, PHPDBG_STRL("white-bold"));
|
||||||
|
phpdbg_set_color_ex(PHPDBG_COLOR_ERROR, PHPDBG_STRL("red-bold"));
|
||||||
|
phpdbg_set_color_ex(PHPDBG_COLOR_NOTICE, PHPDBG_STRL("green"));
|
||||||
|
|
||||||
|
/* set default prompt */
|
||||||
|
phpdbg_set_prompt(PHPDBG_DEFAULT_PROMPT);
|
||||||
|
|
||||||
if (settings > (zend_phpdbg_globals *) 0x2) {
|
if (settings > (zend_phpdbg_globals *) 0x2) {
|
||||||
#ifdef ZTS
|
#ifdef ZTS
|
||||||
*((zend_phpdbg_globals *) (*((void ***) TSRMLS_CACHE))[TSRM_UNSHUFFLE_RSRC_ID(phpdbg_globals_id)]) = *settings;
|
*((zend_phpdbg_globals *) (*((void ***) TSRMLS_CACHE))[TSRM_UNSHUFFLE_RSRC_ID(phpdbg_globals_id)]) = *settings;
|
||||||
@ -1700,6 +1684,43 @@ phpdbg_main:
|
|||||||
void (*_free)(void*);
|
void (*_free)(void*);
|
||||||
void* (*_realloc)(void*, size_t);
|
void* (*_realloc)(void*, size_t);
|
||||||
|
|
||||||
|
if (show_version || show_help) {
|
||||||
|
/* It ain't gonna proceed to real execution anyway,
|
||||||
|
but the correct descriptor is needed already. */
|
||||||
|
PHPDBG_G(io)[PHPDBG_STDOUT].ptr = stdout;
|
||||||
|
PHPDBG_G(io)[PHPDBG_STDOUT].fd = fileno(stdout);
|
||||||
|
if (show_help) {
|
||||||
|
phpdbg_do_help(NULL);
|
||||||
|
} else if (show_version) {
|
||||||
|
phpdbg_out(
|
||||||
|
"phpdbg %s (built: %s %s)\nPHP %s, Copyright (c) 1997-2016 The PHP Group\n%s",
|
||||||
|
PHPDBG_VERSION,
|
||||||
|
__DATE__,
|
||||||
|
__TIME__,
|
||||||
|
PHP_VERSION,
|
||||||
|
get_zend_version()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
sapi_deactivate();
|
||||||
|
sapi_shutdown();
|
||||||
|
if (ini_entries) {
|
||||||
|
free(ini_entries);
|
||||||
|
}
|
||||||
|
if (ini_override) {
|
||||||
|
free(ini_override);
|
||||||
|
}
|
||||||
|
if (exec) {
|
||||||
|
free(exec);
|
||||||
|
}
|
||||||
|
if (oplog_file) {
|
||||||
|
free(oplog_file);
|
||||||
|
}
|
||||||
|
if (init_file) {
|
||||||
|
free(init_file);
|
||||||
|
}
|
||||||
|
goto free_and_return;
|
||||||
|
}
|
||||||
|
|
||||||
zend_try {
|
zend_try {
|
||||||
zend_signal_activate();
|
zend_signal_activate();
|
||||||
} zend_end_try();
|
} zend_end_try();
|
||||||
@ -1839,14 +1860,6 @@ phpdbg_main:
|
|||||||
oplog_file = NULL;
|
oplog_file = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* set default colors */
|
|
||||||
phpdbg_set_color_ex(PHPDBG_COLOR_PROMPT, PHPDBG_STRL("white-bold"));
|
|
||||||
phpdbg_set_color_ex(PHPDBG_COLOR_ERROR, PHPDBG_STRL("red-bold"));
|
|
||||||
phpdbg_set_color_ex(PHPDBG_COLOR_NOTICE, PHPDBG_STRL("green"));
|
|
||||||
|
|
||||||
/* set default prompt */
|
|
||||||
phpdbg_set_prompt(PHPDBG_DEFAULT_PROMPT);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
php_stream_wrapper *wrapper = zend_hash_str_find_ptr(php_stream_get_url_stream_wrappers_hash(), ZEND_STRL("php"));
|
php_stream_wrapper *wrapper = zend_hash_str_find_ptr(php_stream_get_url_stream_wrappers_hash(), ZEND_STRL("php"));
|
||||||
PHPDBG_G(orig_url_wrap_php) = wrapper->wops->stream_opener;
|
PHPDBG_G(orig_url_wrap_php) = wrapper->wops->stream_opener;
|
||||||
@ -2158,6 +2171,7 @@ phpdbg_out:
|
|||||||
free(sapi_name);
|
free(sapi_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
free_and_return:
|
||||||
if (read_from_stdin) {
|
if (read_from_stdin) {
|
||||||
free(read_from_stdin);
|
free(read_from_stdin);
|
||||||
read_from_stdin = NULL;
|
read_from_stdin = NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user