diff options
Diffstat (limited to 'xdeadzone.c')
-rw-r--r-- | xdeadzone.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/xdeadzone.c b/xdeadzone.c index 5b89c94..b05a2ac 100644 --- a/xdeadzone.c +++ b/xdeadzone.c @@ -58,6 +58,11 @@ void errmsg(const char *msg) { usage(1); } +void check_mode(int mode) { + if(mode != M_UNSET) + errmsg("multiple modes given, only one of -abs -ne -nw -se -sw is allowed"); +} + int streq(const char *s1, const char *s2) { return !strcmp(s1, s2); } @@ -93,14 +98,19 @@ int main(int argc, char **argv) { } else if(streq(a, "-i")) { visible = 0; } else if(streq(a, "-abs")) { + check_mode(mode); mode = M_ABS; } else if(streq(a, "-ne")) { + check_mode(mode); mode = M_NE; } else if(streq(a, "-nw")) { + check_mode(mode); mode = M_NW; } else if(streq(a, "-se")) { + check_mode(mode); mode = M_SE; } else if(streq(a, "-sw")) { + check_mode(mode); mode = M_SW; } else if(a[0] == '-') { fprintf(stderr, "%s: invalid option: %s (try --help)\n", exe_name, a); |