version 1.277, 2015/02/10 08:05:30 |
version 1.279, 2015/02/14 13:23:57 |
Line 298 mdoc_valid_pre(struct mdoc *mdoc, struct mdoc_node *n) |
|
Line 298 mdoc_valid_pre(struct mdoc *mdoc, struct mdoc_node *n) |
|
|
|
switch (n->type) { |
switch (n->type) { |
case MDOC_TEXT: |
case MDOC_TEXT: |
check_text(mdoc, n->line, n->pos, n->string); |
if (n->sec != SEC_SYNOPSIS || n->parent->tok != MDOC_Fd) |
|
check_text(mdoc, n->line, n->pos, n->string); |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case MDOC_TBL: |
case MDOC_TBL: |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
Line 325 mdoc_valid_post(struct mdoc *mdoc) |
|
Line 326 mdoc_valid_post(struct mdoc *mdoc) |
|
n = mdoc->last; |
n = mdoc->last; |
if (n->flags & MDOC_VALID) |
if (n->flags & MDOC_VALID) |
return; |
return; |
n->flags |= MDOC_VALID; |
n->flags |= MDOC_VALID | MDOC_ENDED; |
|
|
switch (n->type) { |
switch (n->type) { |
case MDOC_TEXT: |
case MDOC_TEXT: |
Line 416 pre_display(PRE_ARGS) |
|
Line 417 pre_display(PRE_ARGS) |
|
static void |
static void |
pre_bl(PRE_ARGS) |
pre_bl(PRE_ARGS) |
{ |
{ |
struct mdoc_node *np; |
|
struct mdoc_argv *argv, *wa; |
struct mdoc_argv *argv, *wa; |
int i; |
int i; |
enum mdocargt mdoclt; |
enum mdocargt mdoclt; |
enum mdoc_list lt; |
enum mdoc_list lt; |
|
|
if (MDOC_BLOCK != n->type) { |
if (n->type != MDOC_BLOCK) |
if (ENDBODY_NOT != n->end) { |
|
assert(n->pending); |
|
np = n->pending->parent; |
|
} else |
|
np = n->parent; |
|
|
|
assert(np); |
|
assert(MDOC_BLOCK == np->type); |
|
assert(MDOC_Bl == np->tok); |
|
return; |
return; |
} |
|
|
|
/* |
/* |
* First figure out which kind of list to use: bind ourselves to |
* First figure out which kind of list to use: bind ourselves to |
Line 609 pre_bl(PRE_ARGS) |
|
Line 599 pre_bl(PRE_ARGS) |
|
static void |
static void |
pre_bd(PRE_ARGS) |
pre_bd(PRE_ARGS) |
{ |
{ |
struct mdoc_node *np; |
|
struct mdoc_argv *argv; |
struct mdoc_argv *argv; |
int i; |
int i; |
enum mdoc_disp dt; |
enum mdoc_disp dt; |
|
|
pre_literal(mdoc, n); |
pre_literal(mdoc, n); |
|
|
if (MDOC_BLOCK != n->type) { |
if (n->type != MDOC_BLOCK) |
if (ENDBODY_NOT != n->end) { |
|
assert(n->pending); |
|
np = n->pending->parent; |
|
} else |
|
np = n->parent; |
|
|
|
assert(np); |
|
assert(MDOC_BLOCK == np->type); |
|
assert(MDOC_Bd == np->tok); |
|
return; |
return; |
} |
|
|
|
for (i = 0; n->args && i < (int)n->args->argc; i++) { |
for (i = 0; n->args && i < (int)n->args->argc; i++) { |
argv = n->args->argv + i; |
argv = n->args->argv + i; |
Line 797 post_bf(POST_ARGS) |
|
Line 776 post_bf(POST_ARGS) |
|
* element, which contains the goods. |
* element, which contains the goods. |
*/ |
*/ |
|
|
if (MDOC_HEAD != mdoc->last->type) { |
np = mdoc->last; |
if (ENDBODY_NOT != mdoc->last->end) { |
if (MDOC_HEAD != np->type) |
assert(mdoc->last->pending); |
|
np = mdoc->last->pending->parent->head; |
|
} else if (MDOC_BLOCK != mdoc->last->type) { |
|
np = mdoc->last->parent->head; |
|
} else |
|
np = mdoc->last->head; |
|
|
|
assert(np); |
|
assert(MDOC_HEAD == np->type); |
|
assert(MDOC_Bf == np->tok); |
|
return; |
return; |
} |
|
|
|
np = mdoc->last; |
|
assert(MDOC_BLOCK == np->parent->type); |
assert(MDOC_BLOCK == np->parent->type); |
assert(MDOC_Bf == np->parent->tok); |
assert(MDOC_Bf == np->parent->tok); |
|
|