=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/rcs.c,v retrieving revision 1.40 retrieving revision 1.41 diff -c -r1.40 -r1.41 *** src/usr.bin/cvs/rcs.c 2005/04/06 19:12:08 1.40 --- src/usr.bin/cvs/rcs.c 2005/04/07 16:47:11 1.41 *************** *** 1,4 **** ! /* $OpenBSD: rcs.c,v 1.40 2005/04/06 19:12:08 jfb Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: rcs.c,v 1.41 2005/04/07 16:47:11 jfb Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. *************** *** 130,136 **** int rk_flags; } rcs_keys[] = { { "access", RCS_TOK_ACCESS, RCS_TOK_ID, RCS_VOPT }, ! { "author", RCS_TOK_AUTHOR, RCS_TOK_STRING, 0 }, { "branch", RCS_TOK_BRANCH, RCS_TOK_NUM, RCS_VOPT }, { "branches", RCS_TOK_BRANCHES, RCS_TOK_NUM, RCS_VOPT }, { "comment", RCS_TOK_COMMENT, RCS_TOK_STRING, RCS_VOPT }, --- 130,136 ---- int rk_flags; } rcs_keys[] = { { "access", RCS_TOK_ACCESS, RCS_TOK_ID, RCS_VOPT }, ! { "author", RCS_TOK_AUTHOR, RCS_TOK_ID, 0 }, { "branch", RCS_TOK_BRANCH, RCS_TOK_NUM, RCS_VOPT }, { "branches", RCS_TOK_BRANCHES, RCS_TOK_NUM, RCS_VOPT }, { "comment", RCS_TOK_COMMENT, RCS_TOK_STRING, RCS_VOPT }, *************** *** 141,147 **** { "locks", RCS_TOK_LOCKS, RCS_TOK_ID, 0 }, { "log", RCS_TOK_LOG, RCS_TOK_STRING, RCS_NOSCOL }, { "next", RCS_TOK_NEXT, RCS_TOK_NUM, RCS_VOPT }, ! { "state", RCS_TOK_STATE, RCS_TOK_STRING, RCS_VOPT }, { "strict", RCS_TOK_STRICT, 0, 0, }, { "symbols", RCS_TOK_SYMBOLS, 0, 0 }, { "text", RCS_TOK_TEXT, RCS_TOK_STRING, RCS_NOSCOL }, --- 141,147 ---- { "locks", RCS_TOK_LOCKS, RCS_TOK_ID, 0 }, { "log", RCS_TOK_LOG, RCS_TOK_STRING, RCS_NOSCOL }, { "next", RCS_TOK_NEXT, RCS_TOK_NUM, RCS_VOPT }, ! { "state", RCS_TOK_STATE, RCS_TOK_ID, RCS_VOPT }, { "strict", RCS_TOK_STRICT, 0, 0, }, { "symbols", RCS_TOK_SYMBOLS, 0, 0 }, { "text", RCS_TOK_TEXT, RCS_TOK_STRING, RCS_NOSCOL }, *************** *** 1563,1569 **** } if (tokstr != NULL) ! free(tokstr); tokstr = cvs_strdup(RCS_TOKSTR(rfp)); if (tokstr == NULL) { cvs_log(LP_ERRNO, --- 1563,1569 ---- } if (tokstr != NULL) ! cvs_strfree(tokstr); tokstr = cvs_strdup(RCS_TOKSTR(rfp)); if (tokstr == NULL) { cvs_log(LP_ERRNO, *************** *** 1578,1591 **** cvs_log(LP_ERR, "missing semi-colon after RCS `%s' key", rk->rk_str); ! free(tokstr); rcs_freedelta(rdp); return (-1); } if (tok == RCS_TOK_DATE) { if ((datenum = rcsnum_parse(tokstr)) == NULL) { ! free(tokstr); rcs_freedelta(rdp); return (-1); } --- 1578,1591 ---- cvs_log(LP_ERR, "missing semi-colon after RCS `%s' key", rk->rk_str); ! cvs_strfree(tokstr); rcs_freedelta(rdp); return (-1); } if (tok == RCS_TOK_DATE) { if ((datenum = rcsnum_parse(tokstr)) == NULL) { ! cvs_strfree(tokstr); rcs_freedelta(rdp); return (-1); } *************** *** 1595,1601 **** "fields", (datenum->rn_len > 6) ? "too many" : "missing"); ! free(tokstr); rcs_freedelta(rdp); rcsnum_free(datenum); return (-1); --- 1595,1601 ---- "fields", (datenum->rn_len > 6) ? "too many" : "missing"); ! cvs_strfree(tokstr); rcs_freedelta(rdp); rcsnum_free(datenum); return (-1); *************** *** 1767,1773 **** if (type == RCS_TOK_SCOLON) break; ! if (type != RCS_TOK_STRING) { cvs_log(LP_ERR, "unexpected token `%s' in symbol list", RCS_TOKSTR(rfp)); return (-1); --- 1767,1773 ---- if (type == RCS_TOK_SCOLON) break; ! if (type != RCS_TOK_ID) { cvs_log(LP_ERR, "unexpected token `%s' in symbol list", RCS_TOKSTR(rfp)); return (-1);