[BACK]Return to mdoc_macro.c CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/mdoc_macro.c between version 1.163 and 1.165

version 1.163, 2015/02/01 17:30:45 version 1.165, 2015/02/02 04:04:45
Line 1077  blk_full(MACRO_PROT_ARGS)
Line 1077  blk_full(MACRO_PROT_ARGS)
 {  {
         int               la, nl, parsed;          int               la, nl, parsed;
         struct mdoc_arg  *arg;          struct mdoc_arg  *arg;
         struct mdoc_node *head; /* save of head macro */          struct mdoc_node *blk; /* Our own block. */
         struct mdoc_node *body; /* save of body macro */          struct mdoc_node *head; /* Our own head. */
           struct mdoc_node *body; /* Our own body. */
         struct mdoc_node *n;          struct mdoc_node *n;
         enum margserr     ac, lac;          enum margserr     ac, lac;
         char             *p;          char             *p;
Line 1118  blk_full(MACRO_PROT_ARGS)
Line 1119  blk_full(MACRO_PROT_ARGS)
          */           */
   
         mdoc_argv(mdoc, line, tok, &arg, pos, buf);          mdoc_argv(mdoc, line, tok, &arg, pos, buf);
         mdoc_block_alloc(mdoc, line, ppos, tok, arg);          blk = mdoc_block_alloc(mdoc, line, ppos, tok, arg);
         head = body = NULL;          head = body = NULL;
   
         /*          /*
Line 1218  blk_full(MACRO_PROT_ARGS)
Line 1219  blk_full(MACRO_PROT_ARGS)
                         break;                          break;
         }          }
   
           if (blk->flags & MDOC_VALID)
                   return;
         if (head == NULL)          if (head == NULL)
                 head = mdoc_head_alloc(mdoc, line, ppos, tok);                  head = mdoc_head_alloc(mdoc, line, ppos, tok);
         if (nl)          if (nl)
Line 1321  blk_part_imp(MACRO_PROT_ARGS)
Line 1324  blk_part_imp(MACRO_PROT_ARGS)
                 }                  }
         }          }
         assert(n == body);          assert(n == body);
         rew_sub(MDOC_BODY, mdoc, tok, line, ppos);          rew_last(mdoc, body);
         if (nl)          if (nl)
                 append_delims(mdoc, line, pos, buf);                  append_delims(mdoc, line, pos, buf);
         rew_sub(MDOC_BLOCK, mdoc, tok, line, ppos);          rew_last(mdoc, blk);
   
           /*
            * The current block extends an enclosing block.
            * Now that the current block ends, close the enclosing block, too.
            */
   
           while ((blk = blk->pending) != NULL) {
                   rew_last(mdoc, blk);
                   if (blk->type == MDOC_HEAD)
                           mdoc_body_alloc(mdoc, blk->line, blk->pos, blk->tok);
           }
   
         /* Move trailing .Ns out of scope. */          /* Move trailing .Ns out of scope. */
   

Legend:
Removed from v.1.163  
changed lines
  Added in v.1.165

CVSweb