=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/rcs.c,v retrieving revision 1.270 retrieving revision 1.271 diff -c -r1.270 -r1.271 *** src/usr.bin/cvs/rcs.c 2008/06/12 07:16:14 1.270 --- src/usr.bin/cvs/rcs.c 2008/06/12 17:06:17 1.271 *************** *** 1,4 **** ! /* $OpenBSD: rcs.c,v 1.270 2008/06/12 07:16:14 joris Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: rcs.c,v 1.271 2008/06/12 17:06:17 joris Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. *************** *** 237,242 **** --- 237,244 ---- static void rcs_kwexp_line(char *, struct rcs_delta *, struct cvs_lines *, struct cvs_line *, int mode); + static int rcs_ignore_keys = 0; + RCSFILE * rcs_open(const char *path, int fd, int flags, ...) { *************** *** 1721,1726 **** --- 1723,1729 ---- goto fail; break; case RCS_TOK_SYMBOLS: + rcs_ignore_keys = 1; if (rcs_parse_symbols(rfp) < 0) goto fail; break; *************** *** 1734,1739 **** --- 1737,1745 ---- RCS_TOKSTR(rfp)); goto fail; } + + rcs_ignore_keys = 0; + } fail: *************** *** 2302,2308 **** } *bp = '\0'; ! if (type != RCS_TOK_ERR) { for (i = 0; i < RCS_NKEYS; i++) { if (strcmp(rcs_keys[i].rk_str, pdp->rp_buf) == 0) { --- 2308,2314 ---- } *bp = '\0'; ! if (type != RCS_TOK_ERR && rcs_ignore_keys != 1) { for (i = 0; i < RCS_NKEYS; i++) { if (strcmp(rcs_keys[i].rk_str, pdp->rp_buf) == 0) {