diff options
author | nicm <nicm> | 2020-09-03 12:47:33 +0000 |
---|---|---|
committer | nicm <nicm> | 2020-09-03 12:47:33 +0000 |
commit | eadf18b9fa3f32ffd06be5dbca627047430bc01c (patch) | |
tree | 2608c1e6ce255ba16fc29a2d2d009d4c04d4c442 /cmd-attach-session.c | |
parent | e538bef7576456911cd8cf76d3e4ff2ef97bd671 (diff) | |
download | rtmux-eadf18b9fa3f32ffd06be5dbca627047430bc01c.tar.gz rtmux-eadf18b9fa3f32ffd06be5dbca627047430bc01c.tar.bz2 rtmux-eadf18b9fa3f32ffd06be5dbca627047430bc01c.zip |
Do not free old session working directory until after expanding the new
one because it may be needed.
Diffstat (limited to 'cmd-attach-session.c')
-rw-r--r-- | cmd-attach-session.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/cmd-attach-session.c b/cmd-attach-session.c index 38d9c024..6a7ebba7 100644 --- a/cmd-attach-session.c +++ b/cmd-attach-session.c @@ -59,7 +59,7 @@ cmd_attach_session(struct cmdq_item *item, const char *tflag, int dflag, struct session *s; struct winlink *wl; struct window_pane *wp; - char *cause; + char *cwd, *cause; enum msgtype msgtype; if (RB_EMPTY(&sessions)) { @@ -99,8 +99,9 @@ cmd_attach_session(struct cmdq_item *item, const char *tflag, int dflag, } if (cflag != NULL) { + cwd = format_single(item, cflag, c, s, wl, wp); free((void *)s->cwd); - s->cwd = format_single(item, cflag, c, s, wl, wp); + s->cwd = cwd; } if (fflag) server_client_set_flags(c, fflag); |