-/* $OpenBSD: format.c,v 1.127 2017/04/20 09:20:22 nicm Exp $ */
+/* $OpenBSD: format.c,v 1.128 2017/04/20 09:39:07 nicm Exp $ */
/*
* Copyright (c) 2011 Nicholas Marriott <nicholas.marriott@gmail.com>
struct winlink *wl)
{
struct window *w = wl->window;
- char *flags;
if (ft->w == NULL)
ft->w = wl->window;
- flags = window_printable_flags(s, wl);
-
format_defaults_window(ft, w);
format_add(ft, "window_index", "%d", wl->idx);
- format_add(ft, "window_flags", "%s", flags);
+ format_add(ft, "window_flags", "%s", window_printable_flags(s, wl));
format_add(ft, "window_active", "%d", wl == s->curw);
format_add(ft, "window_bell_flag", "%d",
format_add(ft, "window_last_flag", "%d",
!!(wl == TAILQ_FIRST(&s->lastw)));
format_add(ft, "window_linked", "%d", session_is_linked(s, wl->window));
-
- free(flags);
}
/* Set default format keys for a window pane. */
-/* $OpenBSD: tmux.h,v 1.741 2017/04/20 09:20:22 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.742 2017/04/20 09:39:07 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
int window_pane_visible(struct window_pane *);
char *window_pane_search(struct window_pane *, const char *,
u_int *);
-char *window_printable_flags(struct session *, struct winlink *);
+const char *window_printable_flags(struct session *, struct winlink *);
struct window_pane *window_pane_find_up(struct window_pane *);
struct window_pane *window_pane_find_down(struct window_pane *);
struct window_pane *window_pane_find_left(struct window_pane *);
-/* $OpenBSD: window.c,v 1.187 2017/03/21 09:49:10 nicm Exp $ */
+/* $OpenBSD: window.c,v 1.188 2017/04/20 09:39:07 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
}
/* Retuns the printable flags on a window, empty string if no flags set. */
-char *
+const char *
window_printable_flags(struct session *s, struct winlink *wl)
{
- char flags[32];
- int pos;
+ static char flags[32];
+ int pos;
pos = 0;
if (wl->flags & WINLINK_ACTIVITY)
if (wl->window->flags & WINDOW_ZOOMED)
flags[pos++] = 'Z';
flags[pos] = '\0';
- return (xstrdup(flags));
+ return (flags);
}
struct window_pane *