count instead.
-/* $OpenBSD: cmd-find.c,v 1.67 2018/08/02 11:44:07 nicm Exp $ */
+/* $OpenBSD: cmd-find.c,v 1.68 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2015 Nicholas Marriott <nicholas.marriott@gmail.com>
{
struct client *c_loop, *c;
- if (s->flags & SESSION_UNATTACHED)
+ if (s->attached == 0)
s = NULL;
c = NULL;
if (than == NULL)
return (1);
if (flags & CMD_FIND_PREFER_UNATTACHED) {
- attached = (~than->flags & SESSION_UNATTACHED);
- if (attached && (s->flags & SESSION_UNATTACHED))
+ attached = (than->attached != 0);
+ if (attached && s->attached == 0)
return (1);
- else if (!attached && (~s->flags & SESSION_UNATTACHED))
+ else if (!attached && s->attached != 0)
return (0);
}
return (timercmp(&s->activity_time, &than->activity_time, >));
-/* $OpenBSD: resize.c,v 1.25 2017/10/16 19:30:53 nicm Exp $ */
+/* $OpenBSD: resize.c,v 1.26 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
*
* This is quite inefficient - better/additional data structures are needed
* to make it better.
- *
- * As a side effect, this function updates the SESSION_UNATTACHED flag. This
- * flag is necessary to make sure unattached sessions do not limit the size of
- * windows that are attached both to them and to other (attached) sessions.
*/
void
s->attached++;
}
}
- if (ssx == UINT_MAX || ssy == UINT_MAX) {
- s->flags |= SESSION_UNATTACHED;
+ if (ssx == UINT_MAX || ssy == UINT_MAX)
continue;
- }
- s->flags &= ~SESSION_UNATTACHED;
if (lines != 0 && ssy == 0)
ssy = lines;
ssx = ssy = UINT_MAX;
RB_FOREACH(s, sessions, &sessions) {
- if (s->flags & SESSION_UNATTACHED)
+ if (s->attached == 0)
continue;
if (flag)
has = s->curw->window == w;
-/* $OpenBSD: server-client.c,v 1.254 2018/08/02 11:44:07 nicm Exp $ */
+/* $OpenBSD: server-client.c,v 1.255 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicholas.marriott@gmail.com>
TAILQ_FOREACH(c, &clients, entry) {
if (c->session == NULL || !(c->flags & CLIENT_FOCUSED))
continue;
- if (c->session->flags & SESSION_UNATTACHED)
+ if (c->session->attached == 0)
continue;
if (c->session->curw->window == wp->window)
-/* $OpenBSD: server-fn.c,v 1.114 2018/04/10 10:48:44 nicm Exp $ */
+/* $OpenBSD: server-fn.c,v 1.115 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
* set, collect them.
*/
RB_FOREACH(s, sessions, &sessions) {
- if (!(s->flags & SESSION_UNATTACHED))
+ if (s->attached != 0)
continue;
if (options_get_number (s->options, "destroy-unattached"))
session_destroy(s, __func__);
-/* $OpenBSD: server.c,v 1.181 2018/08/02 11:56:12 nicm Exp $ */
+/* $OpenBSD: server.c,v 1.182 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
n = 0;
RB_FOREACH(s, sessions, &sessions) {
- if (!(s->flags & SESSION_UNATTACHED)) {
+ if (s->attached != 0) {
n++;
break;
}
-/* $OpenBSD: session.c,v 1.80 2018/08/02 11:56:12 nicm Exp $ */
+/* $OpenBSD: session.c,v 1.81 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
{
struct session *s = arg;
- if (s->flags & SESSION_UNATTACHED)
+ if (s->attached == 0)
return;
log_debug("session %s locked, activity time %lld", s->name,
else
evtimer_set(&s->lock_timer, session_lock_timer, s);
- if (~s->flags & SESSION_UNATTACHED) {
+ if (s->attached != 0) {
timerclear(&tv);
tv.tv_sec = options_get_number(s->options, "lock-after-time");
if (tv.tv_sec != 0)
-/* $OpenBSD: tmux.h,v 1.838 2018/08/18 16:14:03 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.839 2018/08/18 20:08:52 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
struct hooks *hooks;
struct options *options;
-#define SESSION_UNATTACHED 0x1 /* not attached to any clients */
-#define SESSION_PASTING 0x2
-#define SESSION_ALERTED 0x4
+#define SESSION_PASTING 0x1
+#define SESSION_ALERTED 0x2
int flags;
u_int attached;