diff options
author | 2005-12-05 19:53:00 +0000 | |
---|---|---|
committer | 2005-12-05 19:53:00 +0000 | |
commit | f3e6c8eb006ade50d49dffd2aa5bbac7605b77e2 (patch) | |
tree | 6d2ee76623c8785f9b01a433895770c0a37bc4f1 /usr.bin/cvs/diff.c | |
parent | hrmz.. (diff) | |
download | wireguard-openbsd-f3e6c8eb006ade50d49dffd2aa5bbac7605b77e2.tar.xz wireguard-openbsd-f3e6c8eb006ade50d49dffd2aa5bbac7605b77e2.zip |
- repair cvs diff. my date fix was too naive.
Diffstat (limited to 'usr.bin/cvs/diff.c')
-rw-r--r-- | usr.bin/cvs/diff.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/usr.bin/cvs/diff.c b/usr.bin/cvs/diff.c index 32f98d0fa8f..74cc60b601f 100644 --- a/usr.bin/cvs/diff.c +++ b/usr.bin/cvs/diff.c @@ -1,4 +1,4 @@ -/* $OpenBSD: diff.c,v 1.69 2005/12/01 23:02:27 niallo Exp $ */ +/* $OpenBSD: diff.c,v 1.70 2005/12/05 19:53:00 niallo Exp $ */ /* * Copyright (C) Caldera International Inc. 2001-2002. * All rights reserved. @@ -645,9 +645,20 @@ cvs_diff_local(CVSFILE *cf, void *arg) return (CVS_EX_DATA); } b2 = rcs_getrev(rf, r2); + tv2[0].tv_sec = (long)rcs_rev_getdate(rf, r2); + tv2[1].tv_sec = tv2[0].tv_sec; rcsnum_free(r2); } else { + struct stat st; + if (stat(diff_file, &st) < 0) { + cvs_log(LP_ERR, "failed to retrieve revision %s\n", + dap->rev2); + cvs_buf_free(b1); + return (CVS_EX_DATA); + } b2 = cvs_buf_load(diff_file, BUF_AUTOEXT); + tv2[0].tv_sec = st.st_mtime; + tv2[1].tv_sec = st.st_mtime; } rcs_close(rf); @@ -658,8 +669,6 @@ cvs_diff_local(CVSFILE *cf, void *arg) cvs_buf_free(b1); return (CVS_EX_DATA); } - tv2[0].tv_sec = (long)rcs_rev_getdate(rf, r2); - tv2[1].tv_sec = tv2[0].tv_sec; cvs_printf("%s", diffargs); cvs_printf(" -r%s", buf); |