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

Diff for /mandoc/Attic/mdocml.c between version 1.42 and 1.43

version 1.42, 2009/01/14 11:58:24 version 1.43, 2009/01/15 15:59:19
Line 42  struct md_parse {
Line 42  struct md_parse {
         u_long           bufsz;          u_long           bufsz;
         char            *name;          char            *name;
         int              fd;          int              fd;
         int              lnn;  
         char            *line;  
 };  };
   
 static  void             usage(void);  static  void             usage(void);
Line 278  parse_begin(struct md_parse *p)
Line 276  parse_begin(struct md_parse *p)
         size_t           pos;          size_t           pos;
         char             line[256], sv[256];          char             line[256], sv[256];
         struct mdoc_cb   cb;          struct mdoc_cb   cb;
           int              lnn;
   
         cb.mdoc_err = msg_err;          cb.mdoc_err = msg_err;
         cb.mdoc_warn = msg_warn;          cb.mdoc_warn = msg_warn;
Line 286  parse_begin(struct md_parse *p)
Line 285  parse_begin(struct md_parse *p)
         if (NULL == (p->mdoc = mdoc_alloc(p, &cb)))          if (NULL == (p->mdoc = mdoc_alloc(p, &cb)))
                 return(parse_leave(p, 0));                  return(parse_leave(p, 0));
   
         p->lnn = 1;          for (lnn = 1, pos = 0; ; ) {
         p->line = sv;  
   
         for (pos = 0; ; ) {  
                 if (-1 == (sz = read(p->fd, p->buf, p->bufsz))) {                  if (-1 == (sz = read(p->fd, p->buf, p->bufsz))) {
                         warn("%s", p->name);                          warn("%s", p->name);
                         return(parse_leave(p, 0));                          return(parse_leave(p, 0));
Line 305  parse_begin(struct md_parse *p)
Line 301  parse_begin(struct md_parse *p)
                                         continue;                                          continue;
                                 }                                  }
                                 warnx("%s: line %d too long",                                  warnx("%s: line %d too long",
                                                 p->name, p->lnn);                                                  p->name, lnn);
                                 return(parse_leave(p, 0));                                  return(parse_leave(p, 0));
                         }                          }
   
                         line[(int)pos] = sv[(int)pos] = 0;                          line[(int)pos] = sv[(int)pos] = 0;
                         if ( ! mdoc_parseln(p->mdoc, p->lnn, line))                          if ( ! mdoc_parseln(p->mdoc, lnn, line))
                                 return(parse_leave(p, 0));                                  return(parse_leave(p, 0));
   
                         p->lnn++;                          lnn++;
                         pos = 0;                          pos = 0;
                 }                  }
         }          }

Legend:
Removed from v.1.42  
changed lines
  Added in v.1.43

CVSweb