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

Diff for /src/usr.bin/rcs/co.c between version 1.66 and 1.67

version 1.66, 2006/03/24 05:14:48 version 1.67, 2006/03/27 21:56:32
Line 316 
Line 316 
          */           */
         bp = rcs_kwexp_buf(bp, file, frev);          bp = rcs_kwexp_buf(bp, file, frev);
   
           /*
            * File inherits permissions from its ,v file
            */
           if (stat(file->rf_path, &st) == -1)
                   fatal("could not stat rcsfile");
   
           mode = st.st_mode;
   
         if (flags & CO_LOCK) {          if (flags & CO_LOCK) {
                 if ((lockname != NULL)                  if ((lockname != NULL)
                     && (rcs_lock_add(file, lockname, frev) < 0)) {                      && (rcs_lock_add(file, lockname, frev) < 0)) {
Line 323 
Line 331 
                                 return (-1);                                  return (-1);
                 }                  }
   
                 mode = 0644;                  /* Strip all write bits from mode */
                   mode = st.st_mode &
                       (S_IXUSR|S_IXGRP|S_IXOTH|S_IRUSR|S_IRGRP|S_IROTH);
                   mode |= S_IWUSR;
                 if ((verbose == 1) && !(flags & NEWFILE))                  if ((verbose == 1) && !(flags & NEWFILE))
                         printf(" (locked)");                          printf(" (locked)");
         } else if (flags & CO_UNLOCK) {          } else if (flags & CO_UNLOCK) {
Line 332 
Line 343 
                                 return (-1);                                  return (-1);
                 }                  }
   
                 mode = 0444;                  /* Strip all write bits from mode */
                   mode = st.st_mode &
                       (S_IXUSR|S_IXGRP|S_IXOTH|S_IRUSR|S_IRGRP|S_IROTH);
                 if ((verbose == 1) && !(flags & NEWFILE))                  if ((verbose == 1) && !(flags & NEWFILE))
                         printf(" (unlocked)");                          printf(" (unlocked)");
         }          }

Legend:
Removed from v.1.66  
changed lines
  Added in v.1.67