version 1.214, 2017/02/11 14:11:17 |
version 1.216, 2017/02/16 03:00:23 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2010, 2012-2016 Ingo Schwarze <schwarze@openbsd.org> |
* Copyright (c) 2010, 2012-2017 Ingo Schwarze <schwarze@openbsd.org> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
Line 400 find_pending(struct roff_man *mdoc, int tok, int line, |
|
Line 400 find_pending(struct roff_man *mdoc, int tok, int line, |
|
struct roff_node *n; |
struct roff_node *n; |
int irc; |
int irc; |
|
|
|
if (target->flags & NODE_VALID) |
|
return 0; |
|
|
irc = 0; |
irc = 0; |
for (n = mdoc->last; n != NULL && n != target; n = n->parent) { |
for (n = mdoc->last; n != NULL && n != target; n = n->parent) { |
if (n->flags & NODE_ENDED) |
if (n->flags & NODE_ENDED) |
Line 417 find_pending(struct roff_man *mdoc, int tok, int line, |
|
Line 420 find_pending(struct roff_man *mdoc, int tok, int line, |
|
"%s breaks %s", mdoc_macronames[tok], |
"%s breaks %s", mdoc_macronames[tok], |
mdoc_macronames[n->tok]); |
mdoc_macronames[n->tok]); |
mdoc_endbody_alloc(mdoc, line, ppos, |
mdoc_endbody_alloc(mdoc, line, ppos, |
tok, target, ENDBODY_NOSPACE); |
tok, target); |
} |
} |
} |
} |
} |
} |
Line 631 blk_exp_close(MACRO_PROT_ARGS) |
|
Line 634 blk_exp_close(MACRO_PROT_ARGS) |
|
mdoc_macronames[later->tok]); |
mdoc_macronames[later->tok]); |
|
|
endbody = mdoc_endbody_alloc(mdoc, line, ppos, |
endbody = mdoc_endbody_alloc(mdoc, line, ppos, |
atok, body, ENDBODY_SPACE); |
atok, body); |
|
|
if (tok == MDOC_El) |
if (tok == MDOC_El) |
itblk->flags |= NODE_ENDED | NODE_BROKEN; |
itblk->flags |= NODE_ENDED | NODE_BROKEN; |
Line 733 blk_exp_close(MACRO_PROT_ARGS) |
|
Line 736 blk_exp_close(MACRO_PROT_ARGS) |
|
do |
do |
target = target->parent; |
target = target->parent; |
while ( ! (target->flags & NODE_ENDED)); |
while ( ! (target->flags & NODE_ENDED)); |
if ( ! (target->flags & NODE_VALID)) |
pending = find_pending(mdoc, ntok, line, ppos, target); |
pending = find_pending(mdoc, ntok, |
|
line, ppos, target); |
|
} |
} |
if ( ! pending) |
if ( ! pending) |
rew_pending(mdoc, n); |
rew_pending(mdoc, n); |