=================================================================== RCS file: /cvs/mandoc/mdoc_term.c,v retrieving revision 1.217 retrieving revision 1.221 diff -u -p -r1.217 -r1.221 --- mandoc/mdoc_term.c 2011/02/06 22:33:38 1.217 +++ mandoc/mdoc_term.c 2011/03/22 10:13:01 1.221 @@ -1,4 +1,4 @@ -/* $Id: mdoc_term.c,v 1.217 2011/02/06 22:33:38 schwarze Exp $ */ +/* $Id: mdoc_term.c,v 1.221 2011/03/22 10:13:01 kristaps Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2010 Ingo Schwarze @@ -32,7 +32,6 @@ #include "out.h" #include "term.h" #include "mdoc.h" -#include "chars.h" #include "main.h" #define INDENT 5 @@ -355,6 +354,7 @@ print_mdoc_node(DECL_ARGS) term_word(p, n->string); break; case (MDOC_EQN): + term_word(p, n->eqn->data); break; case (MDOC_TBL): term_tbl(p, n->span); @@ -412,7 +412,6 @@ print_mdoc_node(DECL_ARGS) static void print_mdoc_foot(struct termp *p, const void *arg) { - char buf[DATESIZ], os[BUFSIZ]; const struct mdoc_meta *m; m = (const struct mdoc_meta *)arg; @@ -427,24 +426,21 @@ print_mdoc_foot(struct termp *p, const void *arg) * SYSTEM DATE SYSTEM */ - time2a(m->date, buf, DATESIZ); - strlcpy(os, m->os, BUFSIZ); - term_vspace(p); p->offset = 0; p->rmargin = (p->maxrmargin - - term_strlen(p, buf) + term_len(p, 1)) / 2; + term_strlen(p, m->date) + term_len(p, 1)) / 2; p->flags |= TERMP_NOSPACE | TERMP_NOBREAK; - term_word(p, os); + term_word(p, m->os); term_flushln(p); p->offset = p->rmargin; - p->rmargin = p->maxrmargin - term_strlen(p, os); + p->rmargin = p->maxrmargin - term_strlen(p, m->os); p->flags |= TERMP_NOLPAD | TERMP_NOSPACE; - term_word(p, buf); + term_word(p, m->date); term_flushln(p); p->offset = p->rmargin; @@ -452,7 +448,7 @@ print_mdoc_foot(struct termp *p, const void *arg) p->flags &= ~TERMP_NOBREAK; p->flags |= TERMP_NOLPAD | TERMP_NOSPACE; - term_word(p, os); + term_word(p, m->os); term_flushln(p); p->offset = 0; @@ -1713,6 +1709,7 @@ static int termp_xx_pre(DECL_ARGS) { const char *pp; + int flags; pp = NULL; switch (n->tok) { @@ -1740,9 +1737,10 @@ termp_xx_pre(DECL_ARGS) term_word(p, pp); if (n->child) { + flags = p->flags; p->flags |= TERMP_KEEP; term_word(p, n->child->string); - p->flags &= ~TERMP_KEEP; + p->flags = flags; } return(0); }