[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.37 and 1.38

version 1.37, 2005/11/25 13:50:01 version 1.38, 2005/11/29 10:55:37
Line 36 
Line 36 
 #include "rcs.h"  #include "rcs.h"
 #include "rcsprog.h"  #include "rcsprog.h"
   
   #define CO_OPTSTRING    "f::k:l::M::p::q::r::s:Tu::Vw::x:"
   
 static int checkout_state(RCSFILE *, RCSNUM *, const char *, int,  static int checkout_state(RCSFILE *, RCSNUM *, const char *, int,
     const char *, const char *);      const char *, const char *);
   
Line 47 
Line 49 
         RCSFILE *file;          RCSFILE *file;
         char fpath[MAXPATHLEN], buf[16];          char fpath[MAXPATHLEN], buf[16];
         char *username;          char *username;
         const char *state = NULL;          const char *state;
         time_t rcs_mtime = -1;          time_t rcs_mtime = -1;
   
         flags = 0;          flags = 0;
         kflag = RCS_KWEXP_ERR;          kflag = RCS_KWEXP_ERR;
         rev = RCS_HEAD_REV;          rev = RCS_HEAD_REV;
         frev = NULL;          frev = NULL;
           state = username = NULL;
   
         if ((username = getlogin()) == NULL) {          while ((ch = rcs_getopt(argc, argv, CO_OPTSTRING)) != -1) {
                 cvs_log(LP_ERRNO, "failed to get username");  
                 exit (1);  
         }  
   
         while ((ch = rcs_getopt(argc, argv, "f::k:l::M::p::q::r::s:Tu::Vx:")) != -1) {  
                 switch (ch) {                  switch (ch) {
                 case 'f':                  case 'f':
                         rcs_set_rev(rcs_optarg, &rev);                          rcs_set_rev(rcs_optarg, &rev);
Line 111 
Line 109 
                 case 'V':                  case 'V':
                         printf("%s\n", rcs_version);                          printf("%s\n", rcs_version);
                         exit(0);                          exit(0);
                   case 'w':
                           username = rcs_optarg;
                           break;
                 case 'x':                  case 'x':
                         rcs_suffixes = rcs_optarg;                          rcs_suffixes = rcs_optarg;
                         break;                          break;
Line 129 
Line 130 
                 exit (1);                  exit (1);
         }          }
   
           if ((username == NULL) && ((username = getlogin()) == NULL)) {
                   cvs_log(LP_ERRNO, "failed to get username");
                   exit (1);
           }
   
         for (i = 0; i < argc; i++) {          for (i = 0; i < argc; i++) {
                 if (rcs_statfile(argv[i], fpath, sizeof(fpath)) < 0)                  if (rcs_statfile(argv[i], fpath, sizeof(fpath)) < 0)
                         continue;                          continue;
Line 190 
Line 196 
         fprintf(stderr,          fprintf(stderr,
             "usage: co [-V] [-ddate] [-f[rev]] [-I[rev]] [-kmode] [-l[rev]]\n"              "usage: co [-V] [-ddate] [-f[rev]] [-I[rev]] [-kmode] [-l[rev]]\n"
             "          [-M[rev]] [-mmsg] [-p[rev]] [-q[rev]] [-r[rev]]\n"              "          [-M[rev]] [-mmsg] [-p[rev]] [-q[rev]] [-r[rev]]\n"
             "          [-sstate] [-u[rev]] [-wuser] [-xsuffixes] [-ztz] file ...\n");              "          [-sstate] [-u[rev]] [-w[user]] [-xsuffixes] [-ztz] file ...\n");
 }  }
   
 /*  /*
Line 319 
Line 325 
                 cvs_log(LP_ERR, "%s: No revision on branch has state %s",                  cvs_log(LP_ERR, "%s: No revision on branch has state %s",
                     rfp->rf_path, state);                      rfp->rf_path, state);
                 return (-1);                  return (-1);
         }          } else {
         else {  
                 if (((tstate = rcs_state_get(rfp, rev)) != NULL)                  if (((tstate = rcs_state_get(rfp, rev)) != NULL)
                     && (strcmp(state, tstate) == 0))                      && (strcmp(state, tstate) == 0))
                         return (checkout_rev(rfp, rev, dst, flags, username));                          return (checkout_rev(rfp, rev, dst, flags, username));

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.38