summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--applets/busybox.c5
-rw-r--r--busybox.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/applets/busybox.c b/applets/busybox.c
index 985798e..d356e4c 100644
--- a/applets/busybox.c
+++ b/applets/busybox.c
@@ -144,8 +144,11 @@ int main(int argc, char **argv)
search_applet.name = applet_name;
applet = bsearch(&search_applet, applets, NUM_APPLETS,
sizeof(struct BB_applet), applet_name_compare);
- if (applet != NULL)
+ if (applet != NULL) {
+ if (applet->usage && argv[1] && strcmp(argv[1], "--help") == 0)
+ usage(applet->usage);
exit((*(applet->main)) (argc, argv));
+ }
return(busybox_main(argc, argv));
}
diff --git a/busybox.c b/busybox.c
index 985798e..d356e4c 100644
--- a/busybox.c
+++ b/busybox.c
@@ -144,8 +144,11 @@ int main(int argc, char **argv)
search_applet.name = applet_name;
applet = bsearch(&search_applet, applets, NUM_APPLETS,
sizeof(struct BB_applet), applet_name_compare);
- if (applet != NULL)
+ if (applet != NULL) {
+ if (applet->usage && argv[1] && strcmp(argv[1], "--help") == 0)
+ usage(applet->usage);
exit((*(applet->main)) (argc, argv));
+ }
return(busybox_main(argc, argv));
}