diff options
Diffstat (limited to 'format.c')
-rw-r--r-- | format.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -17,6 +17,7 @@ */ #include <sys/types.h> +#include <sys/param.h> #include <ctype.h> #include <errno.h> @@ -366,7 +367,7 @@ format_get_command(struct window_pane *wp) { char *cmd, *out; - cmd = get_proc_name(wp->fd, wp->tty); + cmd = osdep_get_name(wp->fd, wp->tty); if (cmd == NULL || *cmd == '\0') { free(cmd); cmd = cmd_stringify_argv(wp->argc, wp->argv); @@ -533,7 +534,7 @@ format_window_pane(struct format_tree *ft, struct window_pane *wp) struct grid_line *gl; unsigned long long size; u_int i, idx; - char *cmd; + char *cmd, *cwd; size = 0; for (i = 0; i < gd->hsize; i++) { @@ -571,6 +572,8 @@ format_window_pane(struct format_tree *ft, struct window_pane *wp) if (wp->tty != NULL) format_add(ft, "pane_tty", "%s", wp->tty); format_add(ft, "pane_pid", "%ld", (long) wp->pid); + if ((cwd = osdep_get_cwd(wp->fd)) != NULL) + format_add(ft, "pane_current_path", "%s", cwd); if ((cmd = cmd_stringify_argv(wp->argc, wp->argv)) != NULL) { format_add(ft, "pane_start_command", "%s", cmd); free(cmd); |