summaryrefslogtreecommitdiffstats
path: root/usr.bin/mandoc/mdoc_macro.c
diff options
context:
space:
mode:
authorschwarze <schwarze@openbsd.org>2015-02-03 00:48:27 +0000
committerschwarze <schwarze@openbsd.org>2015-02-03 00:48:27 +0000
commit2d266539b7b638b8140a2783e43e504b86fd3e32 (patch)
tree85228cadd76e44736adc225ada36f6e95df5cc8d /usr.bin/mandoc/mdoc_macro.c
parentslightly extend the passphrase prompt if running with -c in order to (diff)
downloadwireguard-openbsd-2d266539b7b638b8140a2783e43e504b86fd3e32.tar.xz
wireguard-openbsd-2d266539b7b638b8140a2783e43e504b86fd3e32.zip
Bring .Pp/.Lp handling inside .Nm blocks closer to groff;
as a bonus, get rid of another call to rew_sub().
Diffstat (limited to 'usr.bin/mandoc/mdoc_macro.c')
-rw-r--r--usr.bin/mandoc/mdoc_macro.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/usr.bin/mandoc/mdoc_macro.c b/usr.bin/mandoc/mdoc_macro.c
index e54625fa504..12e7dd62dcb 100644
--- a/usr.bin/mandoc/mdoc_macro.c
+++ b/usr.bin/mandoc/mdoc_macro.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mdoc_macro.c,v 1.125 2015/02/02 19:22:46 schwarze Exp $ */
+/* $OpenBSD: mdoc_macro.c,v 1.126 2015/02/03 00:48:27 schwarze Exp $ */
/*
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010, 2012-2015 Ingo Schwarze <schwarze@openbsd.org>
@@ -1457,10 +1457,17 @@ in_line_argn(MACRO_PROT_ARGS)
static void
in_line_eoln(MACRO_PROT_ARGS)
{
- struct mdoc_arg *arg;
+ struct mdoc_node *n;
+ struct mdoc_arg *arg;
- if (tok == MDOC_Pp)
- rew_sub(MDOC_BLOCK, mdoc, MDOC_Nm, line, ppos);
+ if ((tok == MDOC_Pp || tok == MDOC_Lp) &&
+ ! (mdoc->flags & MDOC_SYNOPSIS)) {
+ n = mdoc->last;
+ if (mdoc->next == MDOC_NEXT_SIBLING)
+ n = n->parent;
+ if (n->tok == MDOC_Nm)
+ rew_last(mdoc, mdoc->last->parent);
+ }
mdoc_argv(mdoc, line, tok, &arg, pos, buf);
mdoc_elem_alloc(mdoc, line, ppos, tok, arg);