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

Diff for /src/usr.bin/mg/fileio.c between version 1.104 and 1.105

version 1.104, 2017/05/30 07:05:22 version 1.105, 2018/04/13 14:11:37
Line 703 
Line 703 
         struct stat      statbuf;          struct stat      statbuf;
         const char      *cp;          const char      *cp;
         char             user[LOGIN_NAME_MAX], path[NFILEN];          char             user[LOGIN_NAME_MAX], path[NFILEN];
         char            *un, *ret;          char            *ret;
         size_t           ulen, plen;          size_t           ulen, plen;
   
         path[0] = '\0';          path[0] = '\0';
Line 722 
Line 722 
                         return (NULL);                          return (NULL);
                 return(ret);                  return(ret);
         }          }
         if (ulen == 0) { /* ~/ or ~ */          if (ulen == 0) /* ~/ or ~ */
                 if ((un = getlogin()) != NULL)                  pw = getpwuid(geteuid());
                         (void)strlcpy(user, un, sizeof(user));          else { /* ~user/ or ~user */
                 else  
                         user[0] = '\0';  
         } else { /* ~user/ or ~user */  
                 memcpy(user, &fn[1], ulen);                  memcpy(user, &fn[1], ulen);
                 user[ulen] = '\0';                  user[ulen] = '\0';
                   pw = getpwnam(user);
         }          }
         pw = getpwnam(user);  
         if (pw != NULL) {          if (pw != NULL) {
                 plen = strlcpy(path, pw->pw_dir, sizeof(path));                  plen = strlcpy(path, pw->pw_dir, sizeof(path));
                 if (plen == 0 || path[plen - 1] != '/') {                  if (plen == 0 || path[plen - 1] != '/') {

Legend:
Removed from v.1.104  
changed lines
  Added in v.1.105