diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-05 20:01:16 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2013-03-05 20:01:16 +0000 |
commit | f9e46a373f1ac7155b77754b43b05ed885a9bec9 (patch) | |
tree | c0a4a442958760f1fe78aae331e3396966ef14f9 /format.c | |
parent | f8c86a9515ae863fcbc38769544be983ce494a3c (diff) | |
download | rtmux-f9e46a373f1ac7155b77754b43b05ed885a9bec9.tar.gz rtmux-f9e46a373f1ac7155b77754b43b05ed885a9bec9.tar.bz2 rtmux-f9e46a373f1ac7155b77754b43b05ed885a9bec9.zip |
Do not leak command in formats, from Romain Francoise.
Diffstat (limited to 'format.c')
-rw-r--r-- | format.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -398,7 +398,8 @@ format_window_pane(struct format_tree *ft, struct window_pane *wp) struct grid_line *gl; unsigned long long size; u_int i, idx; - const char *cwd, *cmd; + const char *cwd; + char *cmd; size = 0; for (i = 0; i < gd->hsize; i++) { @@ -432,8 +433,10 @@ format_window_pane(struct format_tree *ft, struct window_pane *wp) format_add(ft, "pane_start_path", "%s", wp->cwd); if ((cwd = osdep_get_cwd(wp->fd)) != NULL) format_add(ft, "pane_current_path", "%s", cwd); - if ((cmd = osdep_get_name(wp->fd, wp->tty)) != NULL) + if ((cmd = osdep_get_name(wp->fd, wp->tty)) != NULL) { format_add(ft, "pane_current_command", "%s", cmd); + free(cmd); + } format_add(ft, "cursor_x", "%d", wp->base.cx); format_add(ft, "cursor_y", "%d", wp->base.cy); |