-/* $Id: mdoc_term.c,v 1.246 2013/05/18 17:47:47 schwarze Exp $ */
+/* $Id: mdoc_term.c,v 1.248 2013/05/29 16:11:40 schwarze Exp $ */
/*
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010, 2012 Ingo Schwarze <schwarze@openbsd.org>
*/
if (TERMP_KEEP & p->flags || MDOC_SYNPRETTY & n->flags) {
- if (n->prev && n->prev->line != n->line) {
+ if (n->prev ? (n->prev->line != n->line) :
+ (n->parent && n->parent->line != n->line)) {
p->flags &= ~TERMP_KEEP;
p->flags |= TERMP_PREKEEP;
- } else if (NULL == n->prev) {
- if (n->parent && n->parent->line != n->line) {
- p->flags &= ~TERMP_KEEP;
- p->flags |= TERMP_PREKEEP;
- }
}
}
termp_bk_post(DECL_ARGS)
{
- if (MDOC_BODY == n->type)
+ if (MDOC_BODY == n->type && ! (MDOC_SYNPRETTY & n->flags))
p->flags &= ~(TERMP_KEEP | TERMP_PREKEEP);
}