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

Diff for /mandoc/man_macro.c between version 1.123 and 1.124

version 1.123, 2017/06/25 11:45:37 version 1.124, 2018/08/14 01:27:48
Line 1 
Line 1 
 /*      $Id$ */  /*      $Id$ */
 /*  /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>   * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2012-2015, 2017 Ingo Schwarze <schwarze@openbsd.org>   * Copyright (c) 2012-2015, 2017, 2018 Ingo Schwarze <schwarze@openbsd.org>
  * Copyright (c) 2013 Franco Fichtner <franco@lastsummer.de>   * Copyright (c) 2013 Franco Fichtner <franco@lastsummer.de>
  *   *
  * Permission to use, copy, modify, and distribute this software for any   * Permission to use, copy, modify, and distribute this software for any
Line 189  rew_scope(struct roff_man *man, enum roff_tok tok)
Line 189  rew_scope(struct roff_man *man, enum roff_tok tok)
 void  void
 blk_close(MACRO_PROT_ARGS)  blk_close(MACRO_PROT_ARGS)
 {  {
         enum roff_tok            ntok;          enum roff_tok            ctok, ntok;
         const struct roff_node  *nn;          const struct roff_node  *nn;
         char                    *p;          char                    *p;
         int                      nrew, target;          int                      cline, cpos, nrew, target;
   
         nrew = 1;          nrew = 1;
         switch (tok) {          switch (tok) {
Line 234  blk_close(MACRO_PROT_ARGS)
Line 234  blk_close(MACRO_PROT_ARGS)
                 mandoc_msg(MANDOCERR_BLK_NOTOPEN, man->parse,                  mandoc_msg(MANDOCERR_BLK_NOTOPEN, man->parse,
                     line, ppos, roff_name[tok]);                      line, ppos, roff_name[tok]);
                 rew_scope(man, MAN_PP);                  rew_scope(man, MAN_PP);
         } else {                  return;
                 line = man->last->line;          }
                 ppos = man->last->pos;  
                 ntok = man->last->tok;  
                 man_unscope(man, nn);  
   
                 if (tok == MAN_RE && nn->head->aux > 0)          cline = man->last->line;
                         roff_setreg(man->roff, "an-margin",          cpos = man->last->pos;
                             nn->head->aux, '-');          ctok = man->last->tok;
           man_unscope(man, nn);
   
                 /* Move a trailing paragraph behind the block. */          if (tok == MAN_RE && nn->head->aux > 0)
                   roff_setreg(man->roff, "an-margin", nn->head->aux, '-');
   
                 if (ntok == MAN_LP || ntok == MAN_PP || ntok == MAN_P) {          /* Trailing text. */
                         *pos = strlen(buf);  
                         blk_imp(man, ntok, line, ppos, pos, buf);          if (buf[*pos] != '\0') {
                 }                  roff_word_alloc(man, line, ppos, buf + *pos);
                   man->last->flags |= NODE_DELIMC;
           }
   
           /* Move a trailing paragraph behind the block. */
   
           if (ctok == MAN_LP || ctok == MAN_PP || ctok == MAN_P) {
                   *pos = strlen(buf);
                   blk_imp(man, ctok, line, ppos, pos, buf);
         }          }
 }  }
   

Legend:
Removed from v.1.123  
changed lines
  Added in v.1.124

CVSweb