diff options
author | 2009-08-18 21:14:24 +0000 | |
---|---|---|
committer | 2009-08-18 21:14:24 +0000 | |
commit | e0b5b8e592cc64a0a80f2605f57257489b884e6a (patch) | |
tree | 7788aea5ea23e6ac6dfea1585b65eacbed0b5397 | |
parent | Disable address translation. Necessary on the RB600 where the firmware starts (diff) | |
download | wireguard-openbsd-e0b5b8e592cc64a0a80f2605f57257489b884e6a.tar.xz wireguard-openbsd-e0b5b8e592cc64a0a80f2605f57257489b884e6a.zip |
options_get_number() is relatively expensive and a check for dead panes happens
a lot more often than actually finding one, so instead of getting the option
for every check, get it for every dead window found.
-rw-r--r-- | usr.bin/tmux/server.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/usr.bin/tmux/server.c b/usr.bin/tmux/server.c index 128183b8b22..2cab75dbf63 100644 --- a/usr.bin/tmux/server.c +++ b/usr.bin/tmux/server.c @@ -1,4 +1,4 @@ -/* $OpenBSD: server.c,v 1.21 2009/08/14 11:23:34 nicm Exp $ */ +/* $OpenBSD: server.c,v 1.22 2009/08/18 21:14:24 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -1106,13 +1106,12 @@ void server_check_window(struct window *w) { struct window_pane *wp, *wq; + struct options *oo = &w->options; struct client *c; struct session *s; struct winlink *wl; u_int i, j; - int destroyed, flag; - - flag = options_get_number(&w->options, "remain-on-exit"); + int destroyed; destroyed = 1; @@ -1125,7 +1124,7 @@ server_check_window(struct window *w) * the window to be destroyed (or it'll close when the last * pane dies). */ - if (wp->fd == -1 && !flag) { + if (wp->fd == -1 && options_get_number(oo, "remain-on-exit")) { layout_close_pane(wp); window_remove_pane(w, wp); server_redraw_window(w); |