summaryrefslogtreecommitdiffstats
path: root/man.c
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2011-02-09 09:18:15 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2011-02-09 09:18:15 +0000
commit75f227792a0d34031aeeaec473483f07aa7c793c (patch)
tree4e0793668e9010ae4476bc9d1838485b6350b00b /man.c
parent31585348ea96dc3d531dd9a8fdbea4ad5ce4b927 (diff)
downloadmandoc-75f227792a0d34031aeeaec473483f07aa7c793c.tar.gz
Allow -man to process EQN as well. Also fix a segfault in missing case
statements in the post-handler for EQN in -mdoc and -man.
Diffstat (limited to 'man.c')
-rw-r--r--man.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/man.c b/man.c
index 64f577ca..161e69a9 100644
--- a/man.c
+++ b/man.c
@@ -346,6 +346,22 @@ man_node_delete(struct man *m, struct man_node *p)
man_node_free(p);
}
+int
+man_addeqn(struct man *m, const struct eqn *ep)
+{
+ struct man_node *n;
+
+ assert( ! (MAN_HALT & m->flags));
+
+ n = man_node_alloc(m, ep->line, ep->pos, MAN_EQN, MAN_MAX);
+ n->eqn = ep;
+
+ if ( ! man_node_append(m, n))
+ return(0);
+
+ m->next = MAN_NEXT_SIBLING;
+ return(man_descope(m, ep->line, ep->pos));
+}
int
man_addspan(struct man *m, const struct tbl_span *sp)