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

Diff for /src/usr.bin/rcs/rcsdiff.c between version 1.23 and 1.24

version 1.23, 2005/11/29 11:11:39 version 1.24, 2005/12/01 23:02:27
Line 179 
Line 179 
         BUF *b1, *b2;          BUF *b1, *b2;
         char rbuf[64];          char rbuf[64];
         struct stat st;          struct stat st;
           struct timeval tv[2], tv2[2];
           memset(&tv, 0, sizeof(tv));
           memset(&tv2, 0, sizeof(tv2));
   
         if (stat(filename, &st) == -1) {          if (stat(filename, &st) == -1) {
                 cvs_log(LP_ERRNO, "%s", filename);                  cvs_log(LP_ERRNO, "%s", filename);
Line 195 
Line 198 
                 cvs_log(LP_ERR, "failed to retrieve revision");                  cvs_log(LP_ERR, "failed to retrieve revision");
                 return (-1);                  return (-1);
         }          }
           tv[0].tv_sec = (long)rcs_rev_getdate(file, rev);
           tv[1].tv_sec = tv[0].tv_sec;
   
         if ((b2 = cvs_buf_load(filename, BUF_AUTOEXT)) == NULL) {          if ((b2 = cvs_buf_load(filename, BUF_AUTOEXT)) == NULL) {
                 cvs_log(LP_ERR, "failed to load file: '%s'", filename);                  cvs_log(LP_ERR, "failed to load file: '%s'", filename);
                 cvs_buf_free(b1);                  cvs_buf_free(b1);
                 return (-1);                  return (-1);
         }          }
           tv2[0].tv_sec = st.st_mtime;
           tv2[1].tv_sec = st.st_mtime;
   
         strlcpy(path1, rcs_tmpdir, sizeof(path1));          strlcpy(path1, rcs_tmpdir, sizeof(path1));
         strlcat(path1, "/diff1.XXXXXXXXXX", sizeof(path1));          strlcat(path1, "/diff1.XXXXXXXXXX", sizeof(path1));
Line 211 
Line 218 
                 return (-1);                  return (-1);
         }          }
         cvs_buf_free(b1);          cvs_buf_free(b1);
           if (utimes(path1, (const struct timeval *)&tv) < 0)
                   cvs_log(LP_ERRNO, "error setting utimes");
   
         strlcpy(path2, rcs_tmpdir, sizeof(path2));          strlcpy(path2, rcs_tmpdir, sizeof(path2));
         strlcat(path2, "/diff2.XXXXXXXXXX", sizeof(path2));          strlcat(path2, "/diff2.XXXXXXXXXX", sizeof(path2));
Line 220 
Line 229 
                 return (-1);                  return (-1);
         }          }
         cvs_buf_free(b2);          cvs_buf_free(b2);
           if (utimes(path2, (const struct timeval *)&tv2) < 0)
                   cvs_log(LP_ERRNO, "error setting utimes");
   
         cvs_diffreg(path1, path2, NULL);          cvs_diffreg(path1, path2, NULL);
         (void)unlink(path1);          (void)unlink(path1);
Line 234 
Line 245 
         char path1[MAXPATHLEN], path2[MAXPATHLEN];          char path1[MAXPATHLEN], path2[MAXPATHLEN];
         BUF *b1, *b2;          BUF *b1, *b2;
         char rbuf1[64], rbuf2[64];          char rbuf1[64], rbuf2[64];
           struct timeval tv[2], tv2[2];
   
           memset(&tv, 0, sizeof(tv));
           memset(&tv2, 0, sizeof(tv2));
   
         rcsnum_tostr(rev1, rbuf1, sizeof(rbuf1));          rcsnum_tostr(rev1, rbuf1, sizeof(rbuf1));
         if (verbose == 1)          if (verbose == 1)
                 printf("retrieving revision %s\n", rbuf1);                  printf("retrieving revision %s\n", rbuf1);
Line 243 
Line 258 
                 cvs_log(LP_ERR, "failed to retrieve revision");                  cvs_log(LP_ERR, "failed to retrieve revision");
                 return (-1);                  return (-1);
         }          }
           tv[0].tv_sec = (long)rcs_rev_getdate(file, rev1);
           tv[1].tv_sec = tv[0].tv_sec;
   
         rcsnum_tostr(rev2, rbuf2, sizeof(rbuf2));          rcsnum_tostr(rev2, rbuf2, sizeof(rbuf2));
         if (verbose == 1)          if (verbose == 1)
Line 252 
Line 269 
                 cvs_log(LP_ERR, "failed to retrieve revision");                  cvs_log(LP_ERR, "failed to retrieve revision");
                 return (-1);                  return (-1);
         }          }
           tv2[0].tv_sec = (long)rcs_rev_getdate(file, rev2);
           tv2[1].tv_sec = tv2[0].tv_sec;
   
         if (verbose == 1)          if (verbose == 1)
                 fprintf(stderr,                  fprintf(stderr,
Line 266 
Line 285 
                 return (-1);                  return (-1);
         }          }
         cvs_buf_free(b1);          cvs_buf_free(b1);
           if (utimes(path1, (const struct timeval *)&tv) < 0)
                   cvs_log(LP_ERRNO, "error setting utimes");
   
         strlcpy(path2, rcs_tmpdir, sizeof(path2));          strlcpy(path2, rcs_tmpdir, sizeof(path2));
         strlcat(path2, "/diff2.XXXXXXXXXX", sizeof(path2));          strlcat(path2, "/diff2.XXXXXXXXXX", sizeof(path2));
Line 276 
Line 297 
         }          }
         cvs_buf_free(b2);          cvs_buf_free(b2);
   
           if (utimes(path2, (const struct timeval *)&tv2) < 0)
                   cvs_log(LP_ERRNO, "error setting utimes");
   
         cvs_diffreg(path1, path2, NULL);          cvs_diffreg(path1, path2, NULL);
         (void)unlink(path1);          (void)unlink(path1);
         (void)unlink(path2);          (void)unlink(path2);

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.24