summaryrefslogtreecommitdiffstats
path: root/cmd-load-buffer.c
diff options
context:
space:
mode:
authornicm <nicm>2018-07-31 13:06:44 +0000
committernicm <nicm>2018-07-31 13:06:44 +0000
commit5f07da6227cecf3d66aa9f28579f48396373d9e4 (patch)
tree6621049403ae2dacf27812ae3df46f1664d9fa17 /cmd-load-buffer.c
parent82776c456e1ad4ba2c9466e90f51179d07a4c9c2 (diff)
Do not leak path or use it after free.
Diffstat (limited to 'cmd-load-buffer.c')
-rw-r--r--cmd-load-buffer.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/cmd-load-buffer.c b/cmd-load-buffer.c
index 6920a21a..b7c299b7 100644
--- a/cmd-load-buffer.c
+++ b/cmd-load-buffer.c
@@ -85,7 +85,7 @@ cmd_load_buffer_exec(struct cmd *self, struct cmdq_item *item)
error = server_set_stdin_callback(c, cmd_load_buffer_callback,
cdata, &cause);
if (error != 0) {
- cmdq_error(item, "%s: %s", path, cause);
+ cmdq_error(item, "-: %s", cause);
free(cause);
return (CMD_RETURN_ERROR);
}
@@ -93,6 +93,8 @@ cmd_load_buffer_exec(struct cmd *self, struct cmdq_item *item)
}
file = server_client_get_path(c, path);
+ free(path);
+
f = fopen(file, "rb");
if (f == NULL) {
cmdq_error(item, "%s: %s", file, strerror(errno));