=================================================================== RCS file: /cvs/mandoc/Attic/mlg.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -p -r1.20 -r1.21 --- mandoc/Attic/mlg.c 2008/12/07 22:40:18 1.20 +++ mandoc/Attic/mlg.c 2008/12/08 12:46:28 1.21 @@ -1,4 +1,4 @@ -/* $Id: mlg.c,v 1.20 2008/12/07 22:40:18 kristaps Exp $ */ +/* $Id: mlg.c,v 1.21 2008/12/08 12:46:28 kristaps Exp $ */ /* * Copyright (c) 2008 Kristaps Dzonsons * @@ -64,7 +64,7 @@ static void mlg_roffmsg(void *arg, const char *, const char *); static int mlg_roffhead(void *, const struct tm *, const char *, const char *, - const char *, const char *); + enum roffmsec, const char *); static int mlg_rofftail(void *); static int mlg_roffin(void *, int, int *, const char **); @@ -362,10 +362,10 @@ mlg_exit(struct md_mlg *p, int flush) int c; c = roff_free(p->tree, flush); - free(p); - (*p->cbs.ml_free)(p->data); + free(p); + return(c); } @@ -415,7 +415,7 @@ mlg_alloc(const struct md_args *args, static int mlg_roffhead(void *arg, const struct tm *tm, const char *os, - const char *title, const char *sec, const char *vol) + const char *title, enum roffmsec sec, const char *vol) { struct md_mlg *p; @@ -462,6 +462,8 @@ mlg_literal_special(struct md_mlg *p, int tok, const c if ( ! mlg_begintag(p, MD_NS_INLINE, tok, NULL, more)) return(0); + /* FIXME: must be ml-filtered. */ + lit = ml_literal(tok, argc, argv, more); assert(lit); @@ -510,12 +512,13 @@ mlg_formatted_special(struct md_mlg *p, int tok, { char buf[256], *lit; - /* FIXME: *more must be ml-filtered. */ - if ( ! mlg_begintag(p, MD_NS_INLINE, tok, NULL, more)) return(0); + /* FIXME: must be ml-filtered. */ + lit = ml_literal(tok, argc, argv, more); + assert(lit); assert(*more); (void)snprintf(buf, sizeof(buf), lit, *more++);