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

Diff for /src/usr.bin/tmux/cmd-source-file.c between version 1.36 and 1.37

version 1.36, 2018/05/24 09:42:49 version 1.37, 2019/05/20 13:23:32
Line 49 
Line 49 
 cmd_source_file_exec(struct cmd *self, struct cmdq_item *item)  cmd_source_file_exec(struct cmd *self, struct cmdq_item *item)
 {  {
         struct args             *args = self->args;          struct args             *args = self->args;
         int                      quiet = args_has(args, 'q');          int                      flags = 0;
         struct client           *c = item->client;          struct client           *c = item->client;
         struct cmdq_item        *new_item;          struct cmdq_item        *new_item, *after;
         enum cmd_retval          retval;          enum cmd_retval          retval;
         char                    *pattern, *tmp;          char                    *pattern, *tmp;
         const char              *path = args->argv[0];          const char              *path = args->argv[0];
         glob_t                   g;          glob_t                   g;
         u_int                    i;          u_int                    i;
   
           if (args_has(args, 'q'))
                   flags |= CFG_QUIET;
   
         if (*path == '/')          if (*path == '/')
                 pattern = xstrdup(path);                  pattern = xstrdup(path);
         else {          else {
Line 69 
Line 72 
   
         retval = CMD_RETURN_NORMAL;          retval = CMD_RETURN_NORMAL;
         if (glob(pattern, 0, NULL, &g) != 0) {          if (glob(pattern, 0, NULL, &g) != 0) {
                 if (!quiet || errno != ENOENT) {                  if (errno != ENOENT || (~flags & CFG_QUIET)) {
                         cmdq_error(item, "%s: %s", path, strerror(errno));                          cmdq_error(item, "%s: %s", path, strerror(errno));
                         retval = CMD_RETURN_ERROR;                          retval = CMD_RETURN_ERROR;
                 }                  }
Line 78 
Line 81 
         }          }
         free(pattern);          free(pattern);
   
           after = item;
         for (i = 0; i < (u_int)g.gl_pathc; i++) {          for (i = 0; i < (u_int)g.gl_pathc; i++) {
                 if (load_cfg(g.gl_pathv[i], c, item, quiet) < 0)                  if (load_cfg(g.gl_pathv[i], c, after, flags, &new_item) < 0)
                         retval = CMD_RETURN_ERROR;                          retval = CMD_RETURN_ERROR;
                   else if (new_item != NULL)
                           after = new_item;
         }          }
         if (cfg_finished) {          if (cfg_finished) {
                 new_item = cmdq_get_callback(cmd_source_file_done, NULL);                  new_item = cmdq_get_callback(cmd_source_file_done, NULL);

Legend:
Removed from v.1.36  
changed lines
  Added in v.1.37