aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Jason Nader <jason@kayoway.com>2020-01-18 18:33:43 +0900
committerLibravatar Drew DeVault <sir@cmpwn.com>2020-01-22 13:30:53 -0500
commit3644d6f4d3215cae7fb4cdda5d3a83bac66b071e (patch)
treeb280772bee32caf47177bcb6a863829dd1a6b205
parentcommands/move: Fix crash when required args not provided (diff)
downloadsway-3644d6f4d3215cae7fb4cdda5d3a83bac66b071e.tar.gz
sway-3644d6f4d3215cae7fb4cdda5d3a83bac66b071e.tar.zst
sway-3644d6f4d3215cae7fb4cdda5d3a83bac66b071e.zip
Check argc>0 before strcasecmp. Should shortcircuit
-rw-r--r--sway/commands/move.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/sway/commands/move.c b/sway/commands/move.c
index ceeab07c..cdbad13e 100644
--- a/sway/commands/move.c
+++ b/sway/commands/move.c
@@ -921,19 +921,13 @@ struct cmd_results *cmd_move(int argc, char **argv) {
921 --argc; ++argv; 921 --argc; ++argv;
922 } 922 }
923 923
924 if (strcasecmp(argv[0], "window") == 0 || 924 if (argc > 0 && (strcasecmp(argv[0], "window") == 0 ||
925 strcasecmp(argv[0], "container") == 0) { 925 strcasecmp(argv[0], "container") == 0)) {
926 --argc; 926 --argc; ++argv;
927 if (argc > 0) {
928 ++argv;
929 }
930 } 927 }
931 928
932 if (strcasecmp(argv[0], "to") == 0) { 929 if (argc > 0 && strcasecmp(argv[0], "to") == 0) {
933 --argc; 930 --argc; ++argv;
934 if (argc > 0) {
935 ++argv;
936 }
937 } 931 }
938 932
939 if (!argc) { 933 if (!argc) {