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

Diff for /src/usr.bin/tmux/control.c between version 1.21 and 1.22

version 1.21, 2019/05/18 21:14:10 version 1.22, 2019/05/23 11:13:30
Line 68 
Line 68 
 void  void
 control_callback(struct client *c, int closed, __unused void *data)  control_callback(struct client *c, int closed, __unused void *data)
 {  {
         char                    *line, *cause;          char                    *line;
         struct cmd_list         *cmdlist;  
         struct cmdq_item        *item;          struct cmdq_item        *item;
           struct cmd_parse_result *pr;
   
         if (closed)          if (closed)
                 c->flags |= CLIENT_EXIT;                  c->flags |= CLIENT_EXIT;
Line 84 
Line 84 
                         break;                          break;
                 }                  }
   
                 cmdlist = cmd_string_parse(line, NULL, 0, &cause);                  pr = cmd_parse_from_string(line, NULL);
                 if (cmdlist == NULL) {                  switch (pr->status) {
                         item = cmdq_get_callback(control_error, cause);                  case CMD_PARSE_EMPTY:
                           break;
                   case CMD_PARSE_ERROR:
                           item = cmdq_get_callback(control_error, pr->error);
                         cmdq_append(c, item);                          cmdq_append(c, item);
                 } else {                          free(pr->error);
                         item = cmdq_get_command(cmdlist, NULL, NULL, 0);                          break;
                   case CMD_PARSE_SUCCESS:
                           item = cmdq_get_command(pr->cmdlist, NULL, NULL, 0);
                         item->shared->flags |= CMDQ_SHARED_CONTROL;                          item->shared->flags |= CMDQ_SHARED_CONTROL;
                         cmdq_append(c, item);                          cmdq_append(c, item);
                         cmd_list_free(cmdlist);                          cmd_list_free(pr->cmdlist);
                           break;
                 }                  }
   
                 free(line);                  free(line);

Legend:
Removed from v.1.21  
changed lines
  Added in v.1.22