=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/tmux.h,v retrieving revision 1.724 retrieving revision 1.725 diff -u -r1.724 -r1.725 --- src/usr.bin/tmux/tmux.h 2017/02/09 12:09:33 1.724 +++ src/usr.bin/tmux/tmux.h 2017/02/09 15:04:53 1.725 @@ -1,4 +1,4 @@ -/* $OpenBSD: tmux.h,v 1.724 2017/02/09 12:09:33 nicm Exp $ */ +/* $OpenBSD: tmux.h,v 1.725 2017/02/09 15:04:53 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -901,11 +901,12 @@ /* Client session. */ struct session_group { - TAILQ_HEAD(, session) sessions; + const char *name; + TAILQ_HEAD(, session) sessions; - TAILQ_ENTRY(session_group) entry; + RB_ENTRY(session_group) entry; }; -TAILQ_HEAD(session_groups, session_group); +RB_HEAD(session_groups, session_group); struct session { u_int id; @@ -2210,13 +2211,15 @@ extern struct session_groups session_groups; int session_cmp(struct session *, struct session *); RB_PROTOTYPE(sessions, session, entry, session_cmp); +int session_group_cmp(struct session_group *, struct session_group *); +RB_PROTOTYPE(session_groups, session_group, entry, session_group_cmp); int session_alive(struct session *); struct session *session_find(const char *); struct session *session_find_by_id_str(const char *); struct session *session_find_by_id(u_int); -struct session *session_create(const char *, int, char **, const char *, - const char *, struct environ *, struct termios *, int, - u_int, u_int, char **); +struct session *session_create(const char *, const char *, int, char **, + const char *, const char *, struct environ *, + struct termios *, int, u_int, u_int, char **); void session_destroy(struct session *); void session_unref(struct session *); int session_check_name(const char *); @@ -2235,9 +2238,10 @@ int session_select(struct session *, int); int session_last(struct session *); int session_set_current(struct session *, struct winlink *); -struct session_group *session_group_find(struct session *); -u_int session_group_index(struct session_group *); -void session_group_add(struct session *, struct session *); +struct session_group *session_group_contains(struct session *); +struct session_group *session_group_find(const char *); +struct session_group *session_group_new(const char *); +void session_group_add(struct session_group *, struct session *); void session_group_synchronize_to(struct session *); void session_group_synchronize_from(struct session *); void session_renumber_windows(struct session *);