From 566863ba5d2d09aebb74f90672fbee4d5754cf46 Mon Sep 17 00:00:00 2001 From: Tobias Blass Date: Mon, 10 Jul 2017 22:59:59 +0200 Subject: [PATCH] fix use-after-free bug --- sway/commands/bind.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sway/commands/bind.c b/sway/commands/bind.c index af5a01e5..d9ea37b7 100644 --- a/sway/commands/bind.c +++ b/sway/commands/bind.c @@ -61,10 +61,11 @@ struct cmd_results *cmd_bindsym(int argc, char **argv) { sym = ((char *)split->items[i])[strlen("button")] - '1' + M_LEFT_CLICK; } if (!sym) { + struct cmd_results *ret = cmd_results_new(CMD_INVALID, "bindsym", + "Unknown key '%s'", (char *)split->items[i]); free_sway_binding(binding); free_flat_list(split); - return cmd_results_new(CMD_INVALID, "bindsym", "Unknown key '%s'", - (char *)split->items[i]); + return ret; } xkb_keysym_t *key = malloc(sizeof(xkb_keysym_t)); if (!key) {