Mercurial > hg > toybox
changeset 895:60a430b7791e
Add --help option to toybox command when TOYBOX_HELP is enabled.
author | Rob Landley <rob@landley.net> |
---|---|
date | Wed, 08 May 2013 23:19:45 -0500 |
parents | 5dcfb58916a7 |
children | 79855f5dc085 |
files | main.c |
diffstat | 1 files changed, 12 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/main.c Tue May 07 22:50:33 2013 -0500 +++ b/main.c Wed May 08 23:19:45 2013 -0500 @@ -99,8 +99,7 @@ { struct toy_list *which; - which = toy_find(argv[0]); - if (!which) return; + if (!(which = toy_find(argv[0]))) return; toy_init(which, argv); toys.which->toy_main(); if (fflush(NULL) || ferror(stdout)) perror_exit("write"); @@ -117,12 +116,21 @@ toys.which = toy_list; if (toys.argv[1]) { - if (toys.argv[1][0]!='-') { + if (CFG_TOYBOX_HELP && !strcmp(toys.argv[1], "--help")) { + if (toys.argv[2]) toys.which = toy_find(toys.argv[2]); + if (toys.which) { + show_help(); + return; + } + } else { toy_exec(toys.argv+1); - error_exit("Unknown command %s",toys.argv[1]); + if (toys.argv[1][0] == '-') goto list; } + + error_exit("Unknown command %s",toys.argv[1]); } +list: // Output list of command. for (i=1; i<ARRAY_LEN(toy_list); i++) { int fl = toy_list[i].flags;