diff options
author | Nicholas Marriott <nicm@openbsd.org> | 2013-03-25 10:07:21 +0000 |
---|---|---|
committer | Nicholas Marriott <nicm@openbsd.org> | 2013-03-25 10:07:21 +0000 |
commit | 35452b3e55aeaba7d64f604e32b31c80d3f80fde (patch) | |
tree | 53cc1c9fb57d3cb2fc360fa17f1b7d7375b74e38 | |
parent | ebd9c615c8137e68f8831d4dbfd968a2f6a10a72 (diff) | |
download | rtmux-35452b3e55aeaba7d64f604e32b31c80d3f80fde.tar.gz rtmux-35452b3e55aeaba7d64f604e32b31c80d3f80fde.tar.bz2 rtmux-35452b3e55aeaba7d64f604e32b31c80d3f80fde.zip |
Do not leak command in formats, from Romain Francoise.
-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 = get_proc_cwd(wp->fd)) != NULL) format_add(ft, "pane_current_path", "%s", cwd); - if ((cmd = get_proc_name(wp->fd, wp->tty)) != NULL) + if ((cmd = get_proc_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); |