[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.156 and 1.157

version 1.156, 2018/05/29 09:10:30 version 1.157, 2018/06/27 17:36:10
Line 19 
Line 19 
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/wait.h>  #include <sys/wait.h>
   
   #include <ctype.h>
 #include <errno.h>  #include <errno.h>
 #include <fnmatch.h>  #include <fnmatch.h>
 #include <libgen.h>  #include <libgen.h>
Line 891 
Line 892 
     char **buf, size_t *len, size_t *off)      char **buf, size_t *len, size_t *off)
 {  {
         struct window_pane      *wp = ft->wp;          struct window_pane      *wp = ft->wp;
         char                    *copy, *copy0, *endptr, *ptr, *found, *new;          char                    *copy, *copy0, *endptr, *ptr, *found, *new, sep;
         char                    *value, *from = NULL, *to = NULL, *left, *right;          char                    *value, *from = NULL, *to = NULL, *left, *right;
         size_t                   valuelen, newlen, fromlen, tolen, used;          size_t                   valuelen, newlen, fromlen, tolen, used;
         long                     limit = 0;          long                     limit = 0;
Line 975 
Line 976 
                 copy += 2;                  copy += 2;
                 break;                  break;
         case 's':          case 's':
                 if (copy[1] != '/')                  sep = copy[1];
                   if (sep == ':' || !ispunct((u_char)sep))
                         break;                          break;
                 from = copy + 2;                  from = copy + 2;
                 for (copy = from; *copy != '\0' && *copy != '/'; copy++)                  for (copy = from; *copy != '\0' && *copy != sep; copy++)
                         /* nothing */;                          /* nothing */;
                 if (copy[0] != '/' || copy == from) {                  if (copy[0] != sep || copy == from) {
                         copy = copy0;                          copy = copy0;
                         break;                          break;
                 }                  }
                 copy[0] = '\0';                  copy[0] = '\0';
                 to = copy + 1;                  to = copy + 1;
                 for (copy = to; *copy != '\0' && *copy != '/'; copy++)                  for (copy = to; *copy != '\0' && *copy != sep; copy++)
                         /* nothing */;                          /* nothing */;
                 if (copy[0] != '/' || copy[1] != ':') {                  if (copy[0] != sep || copy[1] != ':') {
                         copy = copy0;                          copy = copy0;
                         break;                          break;
                 }                  }

Legend:
Removed from v.1.156  
changed lines
  Added in v.1.157