diff options
author | 2017-04-28 19:10:48 +0000 | |
---|---|---|
committer | 2017-04-28 19:10:48 +0000 | |
commit | b3c6572b3fd68b9c900ea3394937d3066aef8820 (patch) | |
tree | b7505a30d86e8ec8a774a0fa9ace5225a02c4a3b | |
parent | Konsole incorrectly ignores SU (CSI S) if the parameter is bigger than (diff) | |
download | wireguard-openbsd-b3c6572b3fd68b9c900ea3394937d3066aef8820.tar.xz wireguard-openbsd-b3c6572b3fd68b9c900ea3394937d3066aef8820.zip |
Do not put the window on the alerts queue and add a reference unless the
alert is enabled and we are actually going to add the alerts event.
-rw-r--r-- | usr.bin/tmux/alerts.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/usr.bin/tmux/alerts.c b/usr.bin/tmux/alerts.c index 902cb45bfac..da4bec99617 100644 --- a/usr.bin/tmux/alerts.c +++ b/usr.bin/tmux/alerts.c @@ -1,4 +1,4 @@ -/* $OpenBSD: alerts.c,v 1.17 2017/04/21 14:09:44 nicm Exp $ */ +/* $OpenBSD: alerts.c,v 1.18 2017/04/28 19:10:48 nicm Exp $ */ /* * Copyright (c) 2015 Nicholas Marriott <nicholas.marriott@gmail.com> @@ -144,16 +144,18 @@ alerts_queue(struct window *w, int flags) log_debug("@%u alerts flags added %#x", w->id, flags); } - if (!w->alerts_queued) { - w->alerts_queued = 1; - TAILQ_INSERT_TAIL(&alerts_list, w, alerts_entry); - w->references++; - } + if (alerts_enabled(w, flags)) { + if (!w->alerts_queued) { + w->alerts_queued = 1; + TAILQ_INSERT_TAIL(&alerts_list, w, alerts_entry); + w->references++; + } - if (!alerts_fired && alerts_enabled(w, flags)) { - log_debug("alerts check queued (by @%u)", w->id); - event_once(-1, EV_TIMEOUT, alerts_callback, NULL, NULL); - alerts_fired = 1; + if (!alerts_fired) { + log_debug("alerts check queued (by @%u)", w->id); + event_once(-1, EV_TIMEOUT, alerts_callback, NULL, NULL); + alerts_fired = 1; + } } } |