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

Diff for /mandoc/mdoc.c between version 1.257 and 1.260

version 1.257, 2016/08/20 14:43:50 version 1.260, 2017/02/16 03:00:23
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) 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 136  mdoc_tail_alloc(struct roff_man *mdoc, int line, int p
Line 136  mdoc_tail_alloc(struct roff_man *mdoc, int line, int p
   
 struct roff_node *  struct roff_node *
 mdoc_endbody_alloc(struct roff_man *mdoc, int line, int pos, int tok,  mdoc_endbody_alloc(struct roff_man *mdoc, int line, int pos, int tok,
                 struct roff_node *body, enum mdoc_endbody end)                  struct roff_node *body)
 {  {
         struct roff_node *p;          struct roff_node *p;
   
         body->flags |= MDOC_ENDED;          body->flags |= NODE_ENDED;
         body->parent->flags |= MDOC_ENDED;          body->parent->flags |= NODE_ENDED;
         p = roff_node_alloc(mdoc, line, pos, ROFFT_BODY, tok);          p = roff_node_alloc(mdoc, line, pos, ROFFT_BODY, tok);
         p->body = body;          p->body = body;
         p->norm = body->norm;          p->norm = body->norm;
         p->end = end;          p->end = ENDBODY_SPACE;
         roff_node_append(mdoc, p);          roff_node_append(mdoc, p);
         mdoc->next = ROFF_NEXT_SIBLING;          mdoc->next = ROFF_NEXT_SIBLING;
         return p;          return p;
Line 292  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
Line 292  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
                  * behaviour that we want to work around it.                   * behaviour that we want to work around it.
                  */                   */
                 roff_elem_alloc(mdoc, line, offs, MDOC_sp);                  roff_elem_alloc(mdoc, line, offs, MDOC_sp);
                 mdoc->last->flags |= MDOC_VALID | MDOC_ENDED;                  mdoc->last->flags |= NODE_VALID | NODE_ENDED;
                 mdoc->next = ROFF_NEXT_SIBLING;                  mdoc->next = ROFF_NEXT_SIBLING;
                 return 1;                  return 1;
         }          }
Line 311  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
Line 311  mdoc_ptext(struct roff_man *mdoc, int line, char *buf,
         assert(buf < end);          assert(buf < end);
   
         if (mandoc_eos(buf+offs, (size_t)(end-buf-offs)))          if (mandoc_eos(buf+offs, (size_t)(end-buf-offs)))
                 mdoc->last->flags |= MDOC_EOS;                  mdoc->last->flags |= NODE_EOS;
   
           for (c = buf + offs; c != NULL; c = strchr(c + 1, '.')) {
                   if (c - buf < offs + 2)
                           continue;
                   if (end - c < 4)
                           break;
                   if (isalpha((unsigned char)c[-2]) &&
                       isalpha((unsigned char)c[-1]) &&
                       c[1] == ' ' &&
                       isupper((unsigned char)(c[2] == ' ' ? c[3] : c[2])) &&
                       (c[-2] != 'n' || c[-1] != 'c') &&
                       (c[-2] != 'v' || c[-1] != 's'))
                           mandoc_msg(MANDOCERR_EOS, mdoc->parse,
                               line, (int)(c - buf), NULL);
           }
   
         return 1;          return 1;
 }  }
   

Legend:
Removed from v.1.257  
changed lines
  Added in v.1.260

CVSweb