diff --git a/format.c b/format.c index 275d5218..f69330b2 100644 --- a/format.c +++ b/format.c @@ -2077,6 +2077,18 @@ format_cb_scroll_region_upper(struct format_tree *ft) return (NULL); } +/* Callback for server_sessions. */ +static void * +format_cb_server_sessions(__unused struct format_tree *ft) +{ + struct session *s; + u_int n = 0; + + RB_FOREACH(s, sessions, &sessions) + n++; + return (format_printf("%u", n)); +} + /* Callback for session_attached. */ static void * format_cb_session_attached(struct format_tree *ft) @@ -2980,6 +2992,9 @@ static const struct format_table_entry format_table[] = { { "scroll_region_upper", FORMAT_TABLE_STRING, format_cb_scroll_region_upper }, + { "server_sessions", FORMAT_TABLE_STRING, + format_cb_server_sessions + }, { "session_activity", FORMAT_TABLE_TIME, format_cb_session_activity }, diff --git a/grid.c b/grid.c index 58de03a3..3afbfb6a 100644 --- a/grid.c +++ b/grid.c @@ -53,7 +53,7 @@ static const struct grid_cell grid_cleared_cell = { { { ' ' }, 0, 1, 1 }, 0, GRID_FLAG_CLEARED, 8, 8, 0, 0 }; static const struct grid_cell_entry grid_cleared_entry = { - GRID_FLAG_CLEARED, { .data = { 0, 8, 8, ' ' } } + { .data = { 0, 8, 8, ' ' } }, GRID_FLAG_CLEARED }; /* Store cell in entry. */ diff --git a/tmux.1 b/tmux.1 index 92e2915f..7bf2bc4d 100644 --- a/tmux.1 +++ b/tmux.1 @@ -5278,6 +5278,7 @@ The following variables are available, where appropriate: .It Li "selection_present" Ta "" Ta "1 if selection started in copy mode" .It Li "selection_start_x" Ta "" Ta "X position of the start of the selection" .It Li "selection_start_y" Ta "" Ta "Y position of the start of the selection" +.It Li "server_sessions" Ta "" Ta "Number of sessions" .It Li "session_activity" Ta "" Ta "Time of session last activity" .It Li "session_alerts" Ta "" Ta "List of window indexes with alerts" .It Li "session_attached" Ta "" Ta "Number of clients session is attached to" diff --git a/tmux.h b/tmux.h index bc12ab09..e1804109 100644 --- a/tmux.h +++ b/tmux.h @@ -728,7 +728,6 @@ struct grid_extd_entry { /* Grid cell entry. */ struct grid_cell_entry { - u_char flags; union { u_int offset; struct { @@ -738,6 +737,7 @@ struct grid_cell_entry { u_char data; } data; }; + u_char flags; } __packed; /* Grid line. */