aboutsummaryrefslogtreecommitdiffstats
path: root/sway/commands/assign.c
diff options
context:
space:
mode:
authorLibravatar Drew DeVault <sir@cmpwn.com>2016-12-15 18:26:53 -0500
committerLibravatar Drew DeVault <sir@cmpwn.com>2016-12-15 19:01:41 -0500
commit10c8b73075fa0dd5512cc14be7240ec47f68dece (patch)
treee8835ef640d1d21ce0f36a5b1bcee726d926e55e /sway/commands/assign.c
parentAdd remaining sway allocation failure handling (diff)
downloadsway-10c8b73075fa0dd5512cc14be7240ec47f68dece.tar.gz
sway-10c8b73075fa0dd5512cc14be7240ec47f68dece.tar.zst
sway-10c8b73075fa0dd5512cc14be7240ec47f68dece.zip
Handle calloc failures
Diffstat (limited to 'sway/commands/assign.c')
-rw-r--r--sway/commands/assign.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sway/commands/assign.c b/sway/commands/assign.c
index 1824692b..992b4692 100644
--- a/sway/commands/assign.c
+++ b/sway/commands/assign.c
@@ -23,11 +23,14 @@ struct cmd_results *cmd_assign(int argc, char **argv) {
23 char *movecmd = "move container to workspace "; 23 char *movecmd = "move container to workspace ";
24 int arglen = strlen(movecmd) + strlen(*argv) + 1; 24 int arglen = strlen(movecmd) + strlen(*argv) + 1;
25 char *cmdlist = calloc(1, arglen); 25 char *cmdlist = calloc(1, arglen);
26 26 if (!cmdlist) {
27 return cmd_results_new(CMD_FAILURE, "assign", "Unable to allocate command list");
28 }
27 snprintf(cmdlist, arglen, "%s%s", movecmd, *argv); 29 snprintf(cmdlist, arglen, "%s%s", movecmd, *argv);
28 30
29 struct criteria *crit = malloc(sizeof(struct criteria)); 31 struct criteria *crit = malloc(sizeof(struct criteria));
30 if (!crit) { 32 if (!crit) {
33 free(cmdlist);
31 return cmd_results_new(CMD_FAILURE, "assign", "Unable to allocate criteria"); 34 return cmd_results_new(CMD_FAILURE, "assign", "Unable to allocate criteria");
32 } 35 }
33 crit->crit_raw = strdup(criteria); 36 crit->crit_raw = strdup(criteria);