X-Git-Url: https://git.cameronkatri.com/mandoc.git/blobdiff_plain/91acfd70d9400fb9d6676d88cd7924741b846397..c6cc6d2cdc21391e0fed1b0e6fd715071bee1879:/mdoc_argv.c diff --git a/mdoc_argv.c b/mdoc_argv.c index 72121d8f..3a36e4e9 100644 --- a/mdoc_argv.c +++ b/mdoc_argv.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_argv.c,v 1.56 2010/07/13 23:53:20 schwarze Exp $ */ +/* $Id: mdoc_argv.c,v 1.60 2010/09/13 20:15:43 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv> * @@ -45,7 +45,7 @@ #define MULTI_STEP 5 -static int argv_a2arg(enum mdoct, const char *); +static enum mdocargt argv_a2arg(enum mdoct, const char *); static enum margserr args(struct mdoc *, int, int *, char *, int, char **); static int argv(struct mdoc *, int, @@ -95,7 +95,7 @@ static int mdoc_argflags[MDOC_MAX] = { 0, /* Os */ 0, /* Sh */ 0, /* Ss */ - ARGS_DELIM, /* Pp */ + 0, /* Pp */ ARGS_DELIM, /* D1 */ ARGS_DELIM, /* Dl */ 0, /* Bd */ @@ -196,7 +196,7 @@ static int mdoc_argflags[MDOC_MAX] = { 0, /* Fr */ 0, /* Ud */ 0, /* Lb */ - ARGS_DELIM, /* Lp */ + 0, /* Lp */ ARGS_DELIM, /* Lk */ ARGS_DELIM, /* Mt */ ARGS_DELIM, /* Brq */ @@ -313,9 +313,11 @@ mdoc_argv_free(struct mdoc_arg *p) void mdoc_argn_free(struct mdoc_arg *p, int iarg) { - struct mdoc_argv *arg = &p->argv[iarg]; + struct mdoc_argv *arg; int j; + arg = &p->argv[iarg]; + if (arg->sz && arg->value) { for (j = (int)arg->sz - 1; j >= 0; j--) free(arg->value[j]); @@ -583,7 +585,7 @@ args(struct mdoc *m, int line, int *pos, } -static int +static enum mdocargt argv_a2arg(enum mdoct tok, const char *p) {