From c0048d6d20a056464a6b1b63e8bdc1793a29b029 Mon Sep 17 00:00:00 2001 From: nicm Date: Sun, 22 Aug 2021 13:00:28 +0000 Subject: [PATCH 1/2] Insert alias in the right place, GitHub issue 2842. --- cmd-parse.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd-parse.y b/cmd-parse.y index 86917941..c27d530e 100644 --- a/cmd-parse.y +++ b/cmd-parse.y @@ -772,7 +772,7 @@ cmd_parse_expand_alias(struct cmd_parse_command *cmd, TAILQ_REMOVE(&cmd->arguments, first, entry); cmd_parse_free_argument(first); - after = TAILQ_NEXT(TAILQ_FIRST(&last->arguments), entry); + after = TAILQ_FIRST(&last->arguments); TAILQ_FOREACH_SAFE(arg, &cmd->arguments, entry, arg1) { TAILQ_REMOVE(&cmd->arguments, arg, entry); if (after == NULL) From 72d905f32c53ea1304b4b3206383502a23cfc0fd Mon Sep 17 00:00:00 2001 From: nicm Date: Sun, 22 Aug 2021 13:48:29 +0000 Subject: [PATCH 2/2] Do not double free expanded path in source-file, also remove some unnecessary assignments. --- cmd-display-menu.c | 2 -- cmd-source-file.c | 2 +- file.c | 4 ++-- server-client.c | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/cmd-display-menu.c b/cmd-display-menu.c index b80f8d46..347a7090 100644 --- a/cmd-display-menu.c +++ b/cmd-display-menu.c @@ -121,8 +121,6 @@ cmd_display_menu_get_position(struct client *tc, struct cmdq_item *item, if (sr != NULL) break; } - if (line == lines) - ranges = &tc->status.entries[0].ranges; if (sr != NULL) { format_add(ft, "popup_window_status_line_x", "%u", diff --git a/cmd-source-file.c b/cmd-source-file.c index 63e1b28c..fbe871ca 100644 --- a/cmd-source-file.c +++ b/cmd-source-file.c @@ -180,12 +180,12 @@ cmd_source_file_exec(struct cmd *self, struct cmdq_item *item) free(pattern); continue; } - free(expanded); free(pattern); for (j = 0; j < g.gl_pathc; j++) cmd_source_file_add(cdata, g.gl_pathv[j]); } + free(expanded); cdata->after = item; cdata->retval = retval; diff --git a/file.c b/file.c index e527f121..7b956120 100644 --- a/file.c +++ b/file.c @@ -558,7 +558,7 @@ file_write_open(struct client_files *files, struct tmuxpeer *peer, log_debug("open write file %d %s", msg->stream, path); find.stream = msg->stream; - if ((cf = RB_FIND(client_files, files, &find)) != NULL) { + if (RB_FIND(client_files, files, &find) != NULL) { error = EBADF; goto reply; } @@ -717,7 +717,7 @@ file_read_open(struct client_files *files, struct tmuxpeer *peer, log_debug("open read file %d %s", msg->stream, path); find.stream = msg->stream; - if ((cf = RB_FIND(client_files, files, &find)) != NULL) { + if (RB_FIND(client_files, files, &find) != NULL) { error = EBADF; goto reply; } diff --git a/server-client.c b/server-client.c index 8821ba57..ac9a7475 100644 --- a/server-client.c +++ b/server-client.c @@ -280,7 +280,7 @@ server_client_open(struct client *c, char **cause) static void server_client_attached_lost(struct client *c) { - struct session *s = c->session; + struct session *s; struct window *w; struct client *loop; struct client *found;