diff options
author | 2014-10-20 15:49:45 +0000 | |
---|---|---|
committer | 2014-10-20 15:49:45 +0000 | |
commit | 7c46d8a6f75a1304ddc3e4e6645e2d28da9ce989 (patch) | |
tree | 901d84c6cf1f2a6a04ecd6d76e51df70867d4762 | |
parent | correctly parse spacing around in-line equations (diff) | |
download | wireguard-openbsd-7c46d8a6f75a1304ddc3e4e6645e2d28da9ce989.tar.xz wireguard-openbsd-7c46d8a6f75a1304ddc3e4e6645e2d28da9ce989.zip |
correct the spacing after in-line equations
that start at the beginning of an input line
but end before the end of an input line
-rw-r--r-- | usr.bin/mandoc/man.c | 5 | ||||
-rw-r--r-- | usr.bin/mandoc/man_term.c | 4 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc.c | 5 | ||||
-rw-r--r-- | usr.bin/mandoc/mdoc_term.c | 4 |
4 files changed, 10 insertions, 8 deletions
diff --git a/usr.bin/mandoc/man.c b/usr.bin/mandoc/man.c index 5293d8f3517..87f0310c5d1 100644 --- a/usr.bin/mandoc/man.c +++ b/usr.bin/mandoc/man.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man.c,v 1.88 2014/10/20 02:31:44 schwarze Exp $ */ +/* $OpenBSD: man.c,v 1.89 2014/10/20 15:49:45 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> @@ -117,7 +117,8 @@ int man_parseln(struct man *man, int ln, char *buf, int offs) { - man->flags |= MAN_NEWLINE; + if (man->last->type != MAN_EQN || ln > man->last->line) + man->flags |= MAN_NEWLINE; return (roff_getcontrol(man->roff, buf, &offs) ? man_pmacro(man, ln, buf, offs) : diff --git a/usr.bin/mandoc/man_term.c b/usr.bin/mandoc/man_term.c index 32f391d4522..e7dc414766e 100644 --- a/usr.bin/mandoc/man_term.c +++ b/usr.bin/mandoc/man_term.c @@ -1,4 +1,4 @@ -/* $OpenBSD: man_term.c,v 1.106 2014/10/20 02:46:00 schwarze Exp $ */ +/* $OpenBSD: man_term.c,v 1.107 2014/10/20 15:49:45 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010-2014 Ingo Schwarze <schwarze@openbsd.org> @@ -988,7 +988,7 @@ print_man_node(DECL_ARGS) if ( ! (n->flags & MAN_LINE)) p->flags |= TERMP_NOSPACE; term_eqn(p, n->eqn); - if ( ! (n->flags & MAN_LINE)) + if (n->next != NULL && ! (n->next->flags & MAN_LINE)) p->flags |= TERMP_NOSPACE; return; case MAN_TBL: diff --git a/usr.bin/mandoc/mdoc.c b/usr.bin/mandoc/mdoc.c index 7368dedca61..ee77219710c 100644 --- a/usr.bin/mandoc/mdoc.c +++ b/usr.bin/mandoc/mdoc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc.c,v 1.116 2014/10/20 02:31:44 schwarze Exp $ */ +/* $OpenBSD: mdoc.c,v 1.117 2014/10/20 15:49:45 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> @@ -236,7 +236,8 @@ int mdoc_parseln(struct mdoc *mdoc, int ln, char *buf, int offs) { - mdoc->flags |= MDOC_NEWLINE; + if (mdoc->last->type != MDOC_EQN || ln > mdoc->last->line) + mdoc->flags |= MDOC_NEWLINE; /* * Let the roff nS register switch SYNOPSIS mode early, diff --git a/usr.bin/mandoc/mdoc_term.c b/usr.bin/mandoc/mdoc_term.c index ee8756fb558..ca209b37961 100644 --- a/usr.bin/mandoc/mdoc_term.c +++ b/usr.bin/mandoc/mdoc_term.c @@ -1,4 +1,4 @@ -/* $OpenBSD: mdoc_term.c,v 1.184 2014/10/20 02:46:00 schwarze Exp $ */ +/* $OpenBSD: mdoc_term.c,v 1.185 2014/10/20 15:49:45 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012, 2013, 2014 Ingo Schwarze <schwarze@openbsd.org> @@ -345,7 +345,7 @@ print_mdoc_node(DECL_ARGS) if ( ! (n->flags & MDOC_LINE)) p->flags |= TERMP_NOSPACE; term_eqn(p, n->eqn); - if ( ! (n->flags & MDOC_LINE)) + if (n->next != NULL && ! (n->next->flags & MDOC_LINE)) p->flags |= TERMP_NOSPACE; break; case MDOC_TBL: |