=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/rcs/rcsdiff.c,v retrieving revision 1.48 retrieving revision 1.49 diff -c -r1.48 -r1.49 *** src/usr.bin/rcs/rcsdiff.c 2006/04/13 16:10:29 1.48 --- src/usr.bin/rcs/rcsdiff.c 2006/04/14 23:29:01 1.49 *************** *** 1,4 **** ! /* $OpenBSD: rcsdiff.c,v 1.48 2006/04/13 16:10:29 joris Exp $ */ /* * Copyright (c) 2005 Joris Vink * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: rcsdiff.c,v 1.49 2006/04/14 23:29:01 joris Exp $ */ /* * Copyright (c) 2005 Joris Vink * All rights reserved. *************** *** 174,190 **** --- 174,196 ---- rcsdiff_file(RCSFILE *file, RCSNUM *rev, const char *filename) { int ret; + time_t t; char path1[MAXPATHLEN], path2[MAXPATHLEN]; BUF *b1, *b2; char rbuf[64]; + struct tm *tb; struct stat st; struct timeval tv[2], tv2[2]; + memset(&tv, 0, sizeof(tv)); memset(&tv2, 0, sizeof(tv2)); ret = -1; b1 = b2 = NULL; + diff_rev1 = rev; + diff_rev2 = NULL; + if (stat(filename, &st) == -1) { cvs_log(LP_ERRNO, "%s", filename); goto out; *************** *** 210,218 **** goto out; } ! tv2[0].tv_sec = st.st_mtime; ! tv2[1].tv_sec = st.st_mtime; strlcpy(path1, rcs_tmpdir, sizeof(path1)); strlcat(path1, "/diff1.XXXXXXXXXX", sizeof(path1)); cvs_buf_write_stmp(b1, path1, 0600); --- 216,228 ---- goto out; } ! /* XXX - GNU uses GMT */ ! tb = gmtime(&st.st_mtime); ! t = mktime(tb); + tv2[0].tv_sec = t; + tv2[1].tv_sec = t; + strlcpy(path1, rcs_tmpdir, sizeof(path1)); strlcat(path1, "/diff1.XXXXXXXXXX", sizeof(path1)); cvs_buf_write_stmp(b1, path1, 0600); *************** *** 259,267 **** memset(&tv, 0, sizeof(tv)); memset(&tv2, 0, sizeof(tv2)); rcsnum_tostr(rev1, rbuf1, sizeof(rbuf1)); if (verbose == 1) ! printf("retrieving revision %s\n", rbuf1); if ((b1 = rcs_getrev(file, rev1)) == NULL) { cvs_log(LP_ERR, "failed to retrieve revision %s", rbuf1); --- 269,280 ---- memset(&tv, 0, sizeof(tv)); memset(&tv2, 0, sizeof(tv2)); + diff_rev1 = rev1; + diff_rev2 = rev2; + rcsnum_tostr(rev1, rbuf1, sizeof(rbuf1)); if (verbose == 1) ! fprintf(stderr, "retrieving revision %s\n", rbuf1); if ((b1 = rcs_getrev(file, rev1)) == NULL) { cvs_log(LP_ERR, "failed to retrieve revision %s", rbuf1);