From b02c9fa19bb3da9cd1c4684322333732cc2996de Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Sat, 18 Jul 2009 14:27:50 +0200 Subject: [PATCH] keymap tool: improve help Do not duplicate help strings, and add missing calling variant for interactivity. --- extras/keymap/keymap.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/extras/keymap/keymap.c b/extras/keymap/keymap.c index b708f38e7b..8fc731debf 100644 --- a/extras/keymap/keymap.c +++ b/extras/keymap/keymap.c @@ -272,6 +272,19 @@ static void interactive(int fd) ioctl(fd, EVIOCGRAB, 0); } +static void help(int error) +{ + const char* h = "Usage: keymap []\n" + " keymap -i \n"; + if (error) { + fputs(h, stderr); + exit(2); + } else { + fputs(h, stdout); + exit(0); + } +} + int main(int argc, char **argv) { static const struct option options[] = { @@ -291,8 +304,7 @@ int main(int argc, char **argv) switch (option) { case 'h': - printf("Usage: keymap []\n\n"); - return 0; + help(0); case 'i': opt_interactive = 1; @@ -302,10 +314,8 @@ int main(int argc, char **argv) } } - if (argc < optind+1 || argc > optind+2) { - fprintf(stderr, "Usage: keymap []\n\n"); - return 2; - } + if (argc < optind+1 || argc > optind+2) + help (1); if ((fd = evdev_open(argv[optind])) < 0) return 3;