summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Watkins <krakjoe@php.net>2016-11-20 05:24:14 +0000
committerJoe Watkins <krakjoe@php.net>2016-11-20 05:24:14 +0000
commit7753d104577dfec6a2b253365f539fbfda314e0f (patch)
tree06194313d98588ab0d878d0bc0c169e82ec2fb0e
parent48191010d518f6fdaedc50d53f3af8146a14c66d (diff)
downloadphp-git-7753d104577dfec6a2b253365f539fbfda314e0f.tar.gz
make it possible to show specific help pages without interactive session
-rw-r--r--sapi/phpdbg/phpdbg.c2
-rw-r--r--sapi/phpdbg/phpdbg_help.c20
-rw-r--r--sapi/phpdbg/phpdbg_help.h2
3 files changed, 23 insertions, 1 deletions
diff --git a/sapi/phpdbg/phpdbg.c b/sapi/phpdbg/phpdbg.c
index d2de0c2e30..2c43a9c853 100644
--- a/sapi/phpdbg/phpdbg.c
+++ b/sapi/phpdbg/phpdbg.c
@@ -1658,7 +1658,7 @@ phpdbg_main:
PHPDBG_G(io)[PHPDBG_STDOUT].ptr = stdout;
PHPDBG_G(io)[PHPDBG_STDOUT].fd = fileno(stdout);
if (show_help) {
- phpdbg_do_help(NULL);
+ phpdbg_do_help_cmd(exec);
} else if (show_version) {
phpdbg_out(
"phpdbg %s (built: %s %s)\nPHP %s, Copyright (c) 1997-2016 The PHP Group\n%s",
diff --git a/sapi/phpdbg/phpdbg_help.c b/sapi/phpdbg/phpdbg_help.c
index ce1d8d9e90..2207e6a645 100644
--- a/sapi/phpdbg/phpdbg_help.c
+++ b/sapi/phpdbg/phpdbg_help.c
@@ -209,6 +209,26 @@ static int get_command(
} /* }}} */
+void phpdbg_do_help_cmd(char *type) { /* {{{ */
+ char *help;
+
+ if (!type) {
+ pretty_print(get_help("overview!"));
+ return;
+ }
+
+ help = get_help(type);
+
+ if (!help || memcmp(help, "", sizeof("")) == SUCCESS) {
+ pretty_print(get_help("overview!"));
+ pretty_print(
+ "\nrequested help page could not be found");
+ return;
+ }
+
+ pretty_print(help);
+} /* }}} */
+
PHPDBG_COMMAND(help) /* {{{ */
{
phpdbg_command_t const *cmd;
diff --git a/sapi/phpdbg/phpdbg_help.h b/sapi/phpdbg/phpdbg_help.h
index 7473684d3f..d44eca15ee 100644
--- a/sapi/phpdbg/phpdbg_help.h
+++ b/sapi/phpdbg/phpdbg_help.h
@@ -45,4 +45,6 @@ typedef struct _phpdbg_help_text_t {
} phpdbg_help_text_t;
extern phpdbg_help_text_t phpdbg_help_text[];
+
+extern void phpdbg_do_help_cmd(char *type);
#endif /* PHPDBG_HELP_H */