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

Diff for /src/usr.bin/cvs/tag.c between version 1.58 and 1.59

version 1.58, 2007/11/17 12:42:39 version 1.59, 2008/01/10 09:39:32
Line 23 
Line 23 
 #define T_CHECK_UPTODATE        0x01  #define T_CHECK_UPTODATE        0x01
 #define T_DELETE                0x02  #define T_DELETE                0x02
 #define T_FORCE_MOVE            0x04  #define T_FORCE_MOVE            0x04
   #define T_BRANCH                0x08
   
 void    cvs_tag_local(struct cvs_file *);  void    cvs_tag_local(struct cvs_file *);
   
Line 56 
Line 57 
   
         while ((ch = getopt(argc, argv, cvs_cmd_tag.cmd_opts)) != -1) {          while ((ch = getopt(argc, argv, cvs_cmd_tag.cmd_opts)) != -1) {
                 switch (ch) {                  switch (ch) {
                   case 'b':
                           runflags |= T_BRANCH;
                           break;
                 case 'c':                  case 'c':
                         runflags |= T_CHECK_UPTODATE;                          runflags |= T_CHECK_UPTODATE;
                         break;                          break;
Line 119 
Line 123 
                 cvs_client_connect_to_server();                  cvs_client_connect_to_server();
                 cr.fileproc = cvs_client_sendfile;                  cr.fileproc = cvs_client_sendfile;
   
                   if (runflags & T_BRANCH)
                           cvs_client_send_request("Argument -b");
   
                 if (runflags & T_CHECK_UPTODATE)                  if (runflags & T_CHECK_UPTODATE)
                         cvs_client_send_request("Argument -c");                          cvs_client_send_request("Argument -c");
   
Line 277 
Line 284 
                 }                  }
         }          }
   
         if (rcs_sym_add(cf->file_rcs, tag_name, cf->file_rcsrev) == -1) {          if (runflags & T_BRANCH) {
                   if ((trev = rcsnum_new_branch(cf->file_rcsrev)) == NULL)
                           fatal("Cannot create a new branch");
   
                   for (;;) {
                           TAILQ_FOREACH(sym, &(cf->file_rcs->rf_symbols), rs_list)
                                   if (!rcsnum_cmp(sym->rs_num, trev, 0))
                                           break;
   
                           if (sym != NULL) {
                                   if (rcsnum_inc(trev) == NULL)
                                           fatal("New revision too high");
                                   if (rcsnum_inc(trev) == NULL)
                                           fatal("New revision too high");
                           } else
                                   break;
                   }
           } else {
                   trev = rcsnum_alloc();
                   rcsnum_cpy(cf->file_rcsrev, trev, 0);
           }
   
           if (rcs_sym_add(cf->file_rcs, tag_name, trev) == -1) {
                 if (rcs_errno != RCS_ERR_DUPENT) {                  if (rcs_errno != RCS_ERR_DUPENT) {
                         cvs_log(LP_NOTICE,                          cvs_log(LP_NOTICE,
                             "failed to set tag %s to revision %s in %s",                              "failed to set tag %s to revision %s in %s",
                             tag_name, revbuf, cf->file_rcs->rf_path);                              tag_name, revbuf, cf->file_rcs->rf_path);
                 }                  }
                   rcsnum_free(trev);
                 return (-1);                  return (-1);
         }          }
   
           rcsnum_free(trev);
         return (0);          return (0);
 }  }

Legend:
Removed from v.1.58  
changed lines
  Added in v.1.59