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

Diff for /src/usr.bin/tmux/cmd-set-option.c between version 1.112 and 1.113

version 1.112, 2017/02/16 10:53:25 version 1.113, 2017/04/22 06:13:30
Line 77 
Line 77 
         enum options_table_scope         scope;          enum options_table_scope         scope;
         struct options                  *oo;          struct options                  *oo;
         struct options_entry            *parent, *o;          struct options_entry            *parent, *o;
         const char                      *name, *value, *target;          char                            *name;
           const char                      *value, *target;
         int                              window, idx, already, error, ambiguous;          int                              window, idx, already, error, ambiguous;
         char                            *cause;          char                            *cause;
   
Line 121 
Line 122 
                         return (CMD_RETURN_NORMAL);                          return (CMD_RETURN_NORMAL);
                 cmdq_error(item, "%s", cause);                  cmdq_error(item, "%s", cause);
                 free(cause);                  free(cause);
                 return (CMD_RETURN_ERROR);                  goto fail;
         }          }
   
         /* Which table should this option go into? */          /* Which table should this option go into? */
Line 136 
Line 137 
                                 cmdq_error(item, "no such session: %s", target);                                  cmdq_error(item, "no such session: %s", target);
                         else                          else
                                 cmdq_error(item, "no current session");                                  cmdq_error(item, "no current session");
                         return (CMD_RETURN_ERROR);                          goto fail;
                 } else                  } else
                         oo = s->options;                          oo = s->options;
         } else if (scope == OPTIONS_TABLE_WINDOW) {          } else if (scope == OPTIONS_TABLE_WINDOW) {
Line 148 
Line 149 
                                 cmdq_error(item, "no such window: %s", target);                                  cmdq_error(item, "no such window: %s", target);
                         else                          else
                                 cmdq_error(item, "no current window");                                  cmdq_error(item, "no current window");
                         return (CMD_RETURN_ERROR);                          goto fail;
                 } else                  } else
                         oo = wl->window->options;                          oo = wl->window->options;
         }          }
Line 159 
Line 160 
         if (idx != -1) {          if (idx != -1) {
                 if (*name == '@' || options_array_size(parent, NULL) == -1) {                  if (*name == '@' || options_array_size(parent, NULL) == -1) {
                         cmdq_error(item, "not an array: %s", args->argv[0]);                          cmdq_error(item, "not an array: %s", args->argv[0]);
                         return (CMD_RETURN_ERROR);                          goto fail;
                 }                  }
         }          }
   
Line 177 
Line 178 
                         if (args_has(args, 'q'))                          if (args_has(args, 'q'))
                                 return (CMD_RETURN_NORMAL);                                  return (CMD_RETURN_NORMAL);
                         cmdq_error(item, "already set: %s", args->argv[0]);                          cmdq_error(item, "already set: %s", args->argv[0]);
                         return (CMD_RETURN_ERROR);                          goto fail;
                 }                  }
         }          }
   
         /* Change the option. */          /* Change the option. */
         if (args_has(args, 'u')) {          if (args_has(args, 'u')) {
                 if (o == NULL)                  if (o == NULL)
                         return (CMD_RETURN_NORMAL);                          goto fail;
                 if (idx == -1) {                  if (idx == -1) {
                         if (oo == global_options ||                          if (oo == global_options ||
                             oo == global_s_options ||                              oo == global_s_options ||
Line 197 
Line 198 
         } else if (*name == '@') {          } else if (*name == '@') {
                 if (value == NULL) {                  if (value == NULL) {
                         cmdq_error(item, "empty value");                          cmdq_error(item, "empty value");
                         return (CMD_RETURN_ERROR);                          goto fail;
                 }                  }
                 options_set_string(oo, name, append, "%s", value);                  options_set_string(oo, name, append, "%s", value);
         } else if (idx == -1 && options_array_size(parent, NULL) == -1) {          } else if (idx == -1 && options_array_size(parent, NULL) == -1) {
                 error = cmd_set_option_set(self, item, oo, parent, value);                  error = cmd_set_option_set(self, item, oo, parent, value);
                 if (error != 0)                  if (error != 0)
                         return (CMD_RETURN_ERROR);                          goto fail;
         } else {          } else {
                 if (value == NULL) {                  if (value == NULL) {
                         cmdq_error(item, "empty value");                          cmdq_error(item, "empty value");
                         return (CMD_RETURN_ERROR);                          goto fail;
                 }                  }
                 if (o == NULL)                  if (o == NULL)
                         o = options_empty(oo, options_table_entry(parent));                          o = options_empty(oo, options_table_entry(parent));
Line 217 
Line 218 
                         options_array_assign(o, value);                          options_array_assign(o, value);
                 } else if (options_array_set(o, idx, value, append) != 0) {                  } else if (options_array_set(o, idx, value, append) != 0) {
                         cmdq_error(item, "invalid index: %s", args->argv[0]);                          cmdq_error(item, "invalid index: %s", args->argv[0]);
                         return (CMD_RETURN_ERROR);                          goto fail;
                 }                  }
         }          }
   
Line 261 
Line 262 
                         server_redraw_client(c);                          server_redraw_client(c);
         }          }
   
           free(name);
         return (CMD_RETURN_NORMAL);          return (CMD_RETURN_NORMAL);
   
   fail:
           free(name);
           return (CMD_RETURN_ERROR);
 }  }
   
 static int  static int

Legend:
Removed from v.1.112  
changed lines
  Added in v.1.113