[BACK]Return to cmd-parse.y CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/cmd-parse.y between version 1.23 and 1.24

version 1.23, 2020/01/28 13:10:14 version 1.24, 2020/03/31 17:14:40
Line 99 
Line 99 
 }  }
   
 %token ERROR  %token ERROR
   %token HIDDEN
 %token IF  %token IF
 %token ELSE  %token ELSE
 %token ELIF  %token ELIF
Line 138 
Line 139 
                         $$ = xmalloc (sizeof *$$);                          $$ = xmalloc (sizeof *$$);
                         TAILQ_INIT($$);                          TAILQ_INIT($$);
                 }                  }
                   | hidden_assignment
                   {
                           $$ = xmalloc (sizeof *$$);
                           TAILQ_INIT($$);
                   }
                 | condition                  | condition
                 {                  {
                         struct cmd_parse_state  *ps = &parse_state;                          struct cmd_parse_state  *ps = &parse_state;
Line 204 
Line 210 
   
                         if ((~flags & CMD_PARSE_PARSEONLY) &&                          if ((~flags & CMD_PARSE_PARSEONLY) &&
                             (ps->scope == NULL || ps->scope->flag))                              (ps->scope == NULL || ps->scope->flag))
                                 environ_put(global_environ, $1);                                  environ_put(global_environ, $1, 0);
                         free($1);                          free($1);
                 }                  }
   
   hidden_assignment : HIDDEN EQUALS
                   {
                           struct cmd_parse_state  *ps = &parse_state;
                           int                      flags = ps->input->flags;
   
                           if ((~flags & CMD_PARSE_PARSEONLY) &&
                               (ps->scope == NULL || ps->scope->flag))
                                   environ_put(global_environ, $2, ENVIRON_HIDDEN);
                           free($2);
                   }
   
 if_open         : IF expanded  if_open         : IF expanded
                 {                  {
                         struct cmd_parse_state  *ps = &parse_state;                          struct cmd_parse_state  *ps = &parse_state;
Line 1079 
Line 1096 
                         if (*cp == '\0')                          if (*cp == '\0')
                                 return (TOKEN);                                  return (TOKEN);
                         ps->condition = 1;                          ps->condition = 1;
                           if (strcmp(yylval.token, "%hidden") == 0) {
                                   free(yylval.token);
                                   return (HIDDEN);
                           }
                         if (strcmp(yylval.token, "%if") == 0) {                          if (strcmp(yylval.token, "%if") == 0) {
                                 free(yylval.token);                                  free(yylval.token);
                                 return (IF);                                  return (IF);

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.24