[BACK]Return to cmd-switch-client.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/cmd-switch-client.c between version 1.61 and 1.62

version 1.61, 2020/04/13 08:26:27 version 1.62, 2020/04/13 10:59:58
Line 48 
Line 48 
 cmd_switch_client_exec(struct cmd *self, struct cmdq_item *item)  cmd_switch_client_exec(struct cmd *self, struct cmdq_item *item)
 {  {
         struct args             *args = cmd_get_args(self);          struct args             *args = cmd_get_args(self);
           struct cmdq_shared      *shared = cmdq_get_shared(item);
           struct cmd_find_state   *current = &shared->current;
           struct cmd_find_state    target;
         const char              *tflag = args_get(args, 't');          const char              *tflag = args_get(args, 't');
         enum cmd_find_type       type;          enum cmd_find_type       type;
         int                      flags;          int                      flags;
Line 69 
Line 72 
                 type = CMD_FIND_SESSION;                  type = CMD_FIND_SESSION;
                 flags = CMD_FIND_PREFER_UNATTACHED;                  flags = CMD_FIND_PREFER_UNATTACHED;
         }          }
         if (cmd_find_target(&item->target, item, tflag, type, flags) != 0)          if (cmd_find_target(&target, item, tflag, type, flags) != 0)
                 return (CMD_RETURN_ERROR);                  return (CMD_RETURN_ERROR);
         s = item->target.s;          s = target.s;
         wl = item->target.wl;          wl = target.wl;
         wp = item->target.wp;          wp = target.wp;
   
         if (args_has(args, 'r'))          if (args_has(args, 'r'))
                 c->flags ^= CLIENT_READONLY;                  c->flags ^= CLIENT_READONLY;
Line 111 
Line 114 
                         return (CMD_RETURN_ERROR);                          return (CMD_RETURN_ERROR);
                 }                  }
         } else {          } else {
                 if (item->client == NULL)                  if (cmdq_get_client(item) == NULL)
                         return (CMD_RETURN_NORMAL);                          return (CMD_RETURN_NORMAL);
                 if (wl != NULL && wp != NULL) {                  if (wl != NULL && wp != NULL) {
                         w = wl->window;                          w = wl->window;
Line 124 
Line 127 
                 }                  }
                 if (wl != NULL) {                  if (wl != NULL) {
                         session_set_current(s, wl);                          session_set_current(s, wl);
                         cmd_find_from_session(&item->shared->current, s, 0);                          cmd_find_from_session(current, s, 0);
                 }                  }
         }          }
   
Line 134 
Line 137 
         if (c->session != NULL && c->session != s)          if (c->session != NULL && c->session != s)
                 c->last_session = c->session;                  c->last_session = c->session;
         c->session = s;          c->session = s;
         if (~item->shared->flags & CMDQ_SHARED_REPEAT)          if (~shared->flags & CMDQ_SHARED_REPEAT)
                 server_client_set_key_table(c, NULL);                  server_client_set_key_table(c, NULL);
         tty_update_client_offset(c);          tty_update_client_offset(c);
         status_timer_start(c);          status_timer_start(c);

Legend:
Removed from v.1.61  
changed lines
  Added in v.1.62