diff options
author | M Stoeckl <code@mstoeckl.com> | 2019-01-22 10:07:38 -0500 |
---|---|---|
committer | M Stoeckl <code@mstoeckl.com> | 2019-01-22 10:12:04 -0500 |
commit | 0af5b26e41c5141d4094652133c230d76bf82e56 (patch) | |
tree | 75c61907f094838e23899231ec5ec955c530f692 /sway/commands/resize.c | |
parent | 71a37ad186ba3080338b2ecb5a3e640600aefc1f (diff) |
Fix dead stores found by scan-build
In addition to removing unused code, two minor problems are fixed:
(1) `resize set` and `resize adjust` did not error when given
too many arguments.
(2) `orientation` was incorrectly overridden to be 'U' for
scroll events in the swaybar tray `handle_click` function.
Diffstat (limited to 'sway/commands/resize.c')
-rw-r--r-- | sway/commands/resize.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sway/commands/resize.c b/sway/commands/resize.c index 0e497239..204de539 100644 --- a/sway/commands/resize.c +++ b/sway/commands/resize.c @@ -478,8 +478,9 @@ static struct cmd_results *cmd_resize_set(int argc, char **argv) { argc--; argv++; } int num_consumed_args = parse_resize_amount(argc, argv, &height); - argc -= num_consumed_args; - argv += num_consumed_args; + if (argc > num_consumed_args) { + return cmd_results_new(CMD_INVALID, usage); + } if (width.unit == RESIZE_UNIT_INVALID) { return cmd_results_new(CMD_INVALID, usage); } @@ -543,12 +544,14 @@ static struct cmd_results *cmd_resize_adjust(int argc, char **argv, struct resize_amount second_amount; if (argc) { int num_consumed_args = parse_resize_amount(argc, argv, &second_amount); - argc -= num_consumed_args; - argv += num_consumed_args; + if (argc > num_consumed_args) { + return cmd_results_new(CMD_INVALID, usage); + } if (second_amount.unit == RESIZE_UNIT_INVALID) { return cmd_results_new(CMD_INVALID, usage); } } else { + second_amount.amount = 0; second_amount.unit = RESIZE_UNIT_INVALID; } |