diff --git a/src/hook.c b/src/hook.c index a68a8bfae..7b04cd27e 100644 --- a/src/hook.c +++ b/src/hook.c @@ -53,8 +53,8 @@ int main(int argc, char *argv[]) break; case 'h': case '?': - usage(argv[0]); - exit(EXIT_SUCCESS); + usage(); + exit(c == '?' ? EXIT_FAILURE : EXIT_SUCCESS); } } diff --git a/src/pipe.c b/src/pipe.c index 626536b08..9cdb1cac1 100644 --- a/src/pipe.c +++ b/src/pipe.c @@ -203,6 +203,7 @@ int main(int argc, char *argv[]) case 'h': case '?': usage(); + exit(c == '?' ? EXIT_FAILURE : EXIT_SUCCESS); } } diff --git a/src/signal.c b/src/signal.c index bce67fadd..2d47dfa95 100644 --- a/src/signal.c +++ b/src/signal.c @@ -102,6 +102,7 @@ int main(int argc, char *argv[]) case 'h': case '?': usage(); + exit(c == '?' ? EXIT_FAILURE : EXIT_SUCCESS); } continue; diff --git a/src/test.c b/src/test.c index 4f9e351b9..a05e4b9ea 100644 --- a/src/test.c +++ b/src/test.c @@ -114,15 +114,8 @@ int main(int argc, char *argv[]) res = strtod(optarg, &endptr); goto check; case '?': - if (optopt == 'c') - error("Option -%c requires an argument.", optopt); - else if (isprint(optopt)) - error("Unknown option '-%c'.", optopt); - else - error("Unknown option character '\\x%x'.", optopt); - exit(EXIT_FAILURE); - default: - abort(); + usage(); + exit(c == '?' ? EXIT_FAILURE : EXIT_SUCCESS); } continue;