[BACK]Return to server.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/server.c between version 1.125 and 1.126

version 1.125, 2015/06/01 09:20:19 version 1.126, 2015/06/04 11:43:51
Line 50 
Line 50 
 struct event     server_ev_accept;  struct event     server_ev_accept;
 struct event     server_ev_second;  struct event     server_ev_second;
   
 int              server_create_socket(void);  struct session          *marked_session;
 void             server_loop(void);  struct winlink          *marked_winlink;
 int              server_should_shutdown(void);  struct window           *marked_window;
 void             server_send_shutdown(void);  struct window_pane      *marked_window_pane;
 void             server_clean_dead(void);  struct layout_cell      *marked_layout_cell;
 void             server_accept_callback(int, short, void *);  
 void             server_signal_callback(int, short, void *);  int     server_create_socket(void);
 void             server_child_signal(void);  void    server_loop(void);
 void             server_child_exited(pid_t, int);  int     server_should_shutdown(void);
 void             server_child_stopped(pid_t, int);  void    server_send_shutdown(void);
 void             server_second_callback(int, short, void *);  void    server_clean_dead(void);
 void             server_lock_server(void);  void    server_accept_callback(int, short, void *);
 void             server_lock_sessions(void);  void    server_signal_callback(int, short, void *);
   void    server_child_signal(void);
   void    server_child_exited(pid_t, int);
   void    server_child_stopped(pid_t, int);
   void    server_second_callback(int, short, void *);
   void    server_lock_server(void);
   void    server_lock_sessions(void);
   
   /* Set marked pane. */
   void
   server_set_marked(struct session *s, struct winlink *wl, struct window_pane *wp)
   {
           marked_session = s;
           marked_winlink = wl;
           marked_window = wl->window;
           marked_window_pane = wp;
           marked_layout_cell = wp->layout_cell;
   }
   
   /* Clear marked pane. */
   void
   server_clear_marked(void)
   {
           marked_session = NULL;
           marked_winlink = NULL;
           marked_window = NULL;
           marked_window_pane = NULL;
           marked_layout_cell = NULL;
   }
   
   /* Is this the marked pane? */
   int
   server_is_marked(struct session *s, struct winlink *wl, struct window_pane *wp)
   {
           if (s == NULL || wl == NULL || wp == NULL)
                   return (0);
           if (marked_session != s || marked_winlink != wl)
                   return (0);
           if (marked_window_pane != wp)
                   return (0);
           return (server_check_marked());
   }
   
   /* Check if the marked pane is still valid. */
   int
   server_check_marked(void)
   {
           struct winlink  *wl;
   
           if (marked_window_pane == NULL)
                   return (0);
           if (marked_layout_cell != marked_window_pane->layout_cell)
                   return (0);
   
           if (!session_alive(marked_session))
                   return (0);
           RB_FOREACH(wl, winlinks, &marked_session->windows) {
                   if (wl->window == marked_window && wl == marked_winlink)
                           break;
           }
           if (wl == NULL)
                   return (0);
   
           if (!window_has_pane(marked_window, marked_window_pane))
                   return (0);
           return (window_pane_visible(marked_window_pane));
   }
   
 /* Create server socket. */  /* Create server socket. */
 int  int

Legend:
Removed from v.1.125  
changed lines
  Added in v.1.126