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

Diff for /src/usr.bin/tmux/format.c between version 1.160 and 1.161

version 1.160, 2018/08/23 15:45:05 version 1.161, 2018/08/26 09:28:42
Line 94 
Line 94 
 #define FORMAT_BASENAME 0x2  #define FORMAT_BASENAME 0x2
 #define FORMAT_DIRNAME 0x4  #define FORMAT_DIRNAME 0x4
 #define FORMAT_SUBSTITUTE 0x8  #define FORMAT_SUBSTITUTE 0x8
   #define FORMAT_QUOTE 0x10
   
 /* Entry in format tree. */  /* Entry in format tree. */
 struct format_entry {  struct format_entry {
Line 754 
Line 755 
         fe->value = NULL;          fe->value = NULL;
 }  }
   
   /* Quote special characters in string. */
   static char *
   format_quote(const char *s)
   {
           const char      *cp;
           char            *out, *at;
   
           at = out = xmalloc(strlen(s) * 2 + 1);
           for (cp = s; *cp != '\0'; cp++) {
                   if (strchr("|&;<>()$`\\\"'*?[# =%", *cp) != NULL)
                           *at++ = '\\';
                   *at++ = *cp;
           }
           *at = '\0';
           return (out);
   }
   
 /* Find a format entry. */  /* Find a format entry. */
 static char *  static char *
 format_find(struct format_tree *ft, const char *key, int modifiers)  format_find(struct format_tree *ft, const char *key, int modifiers)
Line 836 
Line 854 
                 copy = xstrdup(dirname(saved));                  copy = xstrdup(dirname(saved));
                 free(saved);                  free(saved);
         }          }
           if (modifiers & FORMAT_QUOTE) {
                   saved = copy;
                   copy = xstrdup(format_quote(saved));
                   free(saved);
           }
         return (copy);          return (copy);
 }  }
   
Line 974 
Line 997 
                 if (copy[1] != ':')                  if (copy[1] != ':')
                         break;                          break;
                 modifiers |= FORMAT_TIMESTRING;                  modifiers |= FORMAT_TIMESTRING;
                   copy += 2;
                   break;
           case 'q':
                   if (copy[1] != ':')
                           break;
                   modifiers |= FORMAT_QUOTE;
                 copy += 2;                  copy += 2;
                 break;                  break;
         case 's':          case 's':

Legend:
Removed from v.1.160  
changed lines
  Added in v.1.161