From cfb4a5d3ffeec74722101f394a1a3f0856217210 Mon Sep 17 00:00:00 2001 From: raiz Date: Tue, 27 Dec 2016 20:41:40 +0300 Subject: [PATCH] usage(): return success if -h is called && print more appropriate usage, opts can't be all called at the same time, that's why a separator is required --- slstatus.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/slstatus.c b/slstatus.c index 6a338f9..1f08514 100644 --- a/slstatus.c +++ b/slstatus.c @@ -70,7 +70,7 @@ static char *wifi_perc(const char *iface); static char *wifi_essid(const char *iface); static char *kernel_release(void); static void sighandler(const int signo); -static void usage(void); +static void usage(int); char *argv0; char concat[]; @@ -756,10 +756,10 @@ sighandler(const int signo) } static void -usage(void) +usage(int eval) { - fprintf(stderr, "usage: %s [-dhov]\n", argv0); - exit(1); + fprintf(stderr, "usage: %s [-d] [-o] [-v] [-h]\n", argv0); + exit(eval); } int @@ -781,12 +781,14 @@ main(int argc, char *argv[]) case 'v': printf("slstatus %s (C) 2016 slstatus engineers\n", VERSION); return 0; + case 'h': + usage(0); default: - usage(); + usage(1); } ARGEND if (dflag && oflag) { - usage(); + usage(1); } if (dflag && daemon(1, 1) < 0) { err(1, "daemon");