diff options
author | 2016-05-09 13:03:55 +0000 | |
---|---|---|
committer | 2016-05-09 13:03:55 +0000 | |
commit | b5a78d4432f590575518eac8fa332625e2cead1f (patch) | |
tree | 1827b9648cd04edf12e9c250dc9632ba35782a63 | |
parent | Fix stifle_history(): Remove excessive entries, if any. (diff) | |
download | wireguard-openbsd-b5a78d4432f590575518eac8fa332625e2cead1f.tar.xz wireguard-openbsd-b5a78d4432f590575518eac8fa332625e2cead1f.zip |
Implement Mdocdate keyword substitution.
In particular, this stops rcsdiff(1) and CVSweb from showing
wrong Mdocdate lines in diffs.
Problem originally reported by tj@.
OK tobias@ otto@ millert@
-rw-r--r-- | usr.bin/rcs/rcs.c | 13 | ||||
-rw-r--r-- | usr.bin/rcs/rcs.h | 3 |
2 files changed, 14 insertions, 2 deletions
diff --git a/usr.bin/rcs/rcs.c b/usr.bin/rcs/rcs.c index 986dfc90e29..b9a44105744 100644 --- a/usr.bin/rcs/rcs.c +++ b/usr.bin/rcs/rcs.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rcs.c,v 1.84 2015/11/02 16:45:21 nicm Exp $ */ +/* $OpenBSD: rcs.c,v 1.85 2016/05/09 13:03:55 schwarze Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org> * All rights reserved. @@ -66,6 +66,7 @@ struct rcs_kw rcs_expkw[] = { { "Revision", RCS_KW_REVISION }, { "Source", RCS_KW_SOURCE }, { "State", RCS_KW_STATE }, + { "Mdocdate", RCS_KW_MDOCDATE }, }; int rcs_errno = RCS_ERR_NOERR; @@ -1596,6 +1597,16 @@ rcs_expand_keywords(char *rcsfile_in, struct rcs_delta *rdp, BUF *bp, int mode) buf_putc(newbuf, ' '); } + if (kwtype & RCS_KW_MDOCDATE) { + strftime(buf, sizeof(buf), "%B", &tb); + buf_puts(newbuf, buf); + /* Only one blank before single-digit day. */ + snprintf(buf, sizeof(buf), " %d", tb.tm_mday); + buf_puts(newbuf, buf); + strftime(buf, sizeof(buf), " %Y ", &tb); + buf_puts(newbuf, buf); + } + if (kwtype & RCS_KW_NAME) buf_putc(newbuf, ' '); diff --git a/usr.bin/rcs/rcs.h b/usr.bin/rcs/rcs.h index c12a2e012a2..ff6a3ae27e9 100644 --- a/usr.bin/rcs/rcs.h +++ b/usr.bin/rcs/rcs.h @@ -1,4 +1,4 @@ -/* $OpenBSD: rcs.h,v 1.16 2013/06/03 17:04:35 jcs Exp $ */ +/* $OpenBSD: rcs.h,v 1.17 2016/05/09 13:03:55 schwarze Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau <jfb@openbsd.org> * All rights reserved. @@ -69,6 +69,7 @@ #define RCS_KW_SOURCE 0x0400 #define RCS_KW_STATE 0x0800 #define RCS_KW_FULLPATH 0x0010 +#define RCS_KW_MDOCDATE 0x0020 #define RCS_KW_LOCKER 0x10000 #define RCS_KW_ID \ |