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

Diff for /src/usr.bin/tmux/cmd-command-prompt.c between version 1.62 and 1.63

version 1.62, 2021/08/25 08:51:55 version 1.63, 2021/08/27 17:25:55
Line 169 
Line 169 
 cmd_command_prompt_callback(struct client *c, void *data, const char *s,  cmd_command_prompt_callback(struct client *c, void *data, const char *s,
     int done)      int done)
 {  {
         struct cmd_command_prompt_cdata         *cdata = data;          struct cmd_command_prompt_cdata          *cdata = data;
         char                                    *error;          char                                     *error;
         struct cmdq_item                        *item = cdata->item, *new_item;          struct cmdq_item                         *item = cdata->item, *new_item;
         struct cmd_list                         *cmdlist;          struct cmd_list                          *cmdlist;
         struct cmd_command_prompt_prompt        *prompt;          struct cmd_command_prompt_prompt         *prompt;
           int                                       argc = 0;
           char                                    **argv = NULL;
   
         if (s == NULL)          if (s == NULL)
                 goto out;                  goto out;
Line 181 
Line 183 
                 if (cdata->flags & PROMPT_INCREMENTAL)                  if (cdata->flags & PROMPT_INCREMENTAL)
                         goto out;                          goto out;
   
                 cmd_append_argv(&cdata->argc, &cdata->argv, s);  
                 if (++cdata->current != cdata->count) {                  if (++cdata->current != cdata->count) {
                         prompt = &cdata->prompts[cdata->current];                          prompt = &cdata->prompts[cdata->current];
                         status_prompt_update(c, prompt->prompt, prompt->input);                          status_prompt_update(c, prompt->prompt, prompt->input);
Line 189 
Line 190 
                 }                  }
         }          }
   
         cmdlist = args_make_commands(cdata->state, cdata->argc, cdata->argv,          argc = cdata->argc;
             &error);          argv = cmd_copy_argv(cdata->argc, cdata->argv);
           cmd_append_argv(&argc, &argv, s);
           if (done) {
                   cdata->argc = argc;
                   cdata->argv = cmd_copy_argv(argc, argv);
           }
   
           cmdlist = args_make_commands(cdata->state, argc, argv, &error);
         if (cmdlist == NULL) {          if (cmdlist == NULL) {
                 cmdq_append(c, cmdq_get_error(error));                  cmdq_append(c, cmdq_get_error(error));
                 free(error);                  free(error);
Line 201 
Line 209 
                 new_item = cmdq_get_command(cmdlist, cmdq_get_state(item));                  new_item = cmdq_get_command(cmdlist, cmdq_get_state(item));
                 cmdq_insert_after(item, new_item);                  cmdq_insert_after(item, new_item);
         }          }
           cmd_free_argv(argc, argv);
   
         if (c->prompt_inputcb != cmd_command_prompt_callback)          if (c->prompt_inputcb != cmd_command_prompt_callback)
                 return (1);                  return (1);

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