The branch, hooks has been updated
       via  49aba762dd836d9400ef306eeab555c40a501ce6 (commit)
      from  d12b830caca60c2c3b888e66c967283d9dcef620 (commit)

- Log -----------------------------------------------------------------
commit 49aba762dd836d9400ef306eeab555c40a501ce6
Author: Thomas Adam <tho...@xteddy.org>
Commit: Thomas Adam <tho...@xteddy.org>

    Define struct alerts for holding alert info
    
    As a preparatory step in making the default session consider sessions with
    alerts as being preferred, define a structure to hold this information.
---
 server-window.c |   10 ++++++++++
 server.c        |    1 +
 tmux.h          |   11 +++++++++++
 3 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/server-window.c b/server-window.c
index b523299..d5e29fe 100644
--- a/server-window.c
+++ b/server-window.c
@@ -21,9 +21,13 @@
 #include <event.h>
 #include <stdlib.h>
 #include <unistd.h>
+#include <string.h>
 
 #include "tmux.h"
 
+struct alerts   alerts;
+RB_GENERATE(alerts, alert, entry, alert_cmp);
+
 int     server_window_check_bell(struct session *, struct winlink *);
 int     server_window_check_activity(struct session *, struct winlink *);
 int     server_window_check_silence(struct session *, struct winlink *);
@@ -41,6 +45,12 @@ const struct window_flag_hook         
window_flag_hook_names[] = {
        {WINLINK_SILENCE, "on-window-silence"},
 };
 
+int
+alert_cmp(struct alert *a1, struct alert *a2)
+{
+       return (strcmp(a1->s->name, a2->s->name));
+}
+
 /* Window functions that need to happen every loop. */
 void
 server_window_loop(void)
diff --git a/server.c b/server.c
index 9b11e01..e3d5008 100644
--- a/server.c
+++ b/server.c
@@ -145,6 +145,7 @@ server_start(int lockfd, char *lockfile)
        RB_INIT(&sessions);
        RB_INIT(&dead_sessions);
        TAILQ_INIT(&session_groups);
+       RB_INIT(&alerts);
        mode_key_init_trees();
        key_bindings_init();
        utf8_build();
diff --git a/tmux.h b/tmux.h
index fedb5da..ad98fd5 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1085,6 +1085,14 @@ struct session {
 RB_HEAD(sessions, session);
 ARRAY_DECL(sessionslist, struct session *);
 
+/* Alert information. */
+struct alert {
+       struct session  *s;
+       struct winlinks  windows;
+       RB_ENTRY(alert)  entry;
+};
+RB_HEAD(alerts, alert);
+
 /* TTY information. */
 struct tty_key {
        char             ch;
@@ -1942,6 +1950,9 @@ void       server_client_status_timer(void);
 void    server_client_loop(void);
 
 /* server-window.c */
+extern struct alerts alerts;
+RB_PROTOTYPE(alerts, alert, entry, alert_cmp);
+int     alert_cmp(struct alert *, struct alert *);
 void    server_window_loop(void);
 
 /* server-fn.c */


-----------------------------------------------------------------------

Summary of changes:
 server-window.c |   10 ++++++++++
 server.c        |    1 +
 tmux.h          |   11 +++++++++++
 3 files changed, 22 insertions(+), 0 deletions(-)


hooks/post-receive
-- 
tmux

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
tmux-cvs mailing list
tmux-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tmux-cvs

Reply via email to