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

Diff for /mandoc/read.c between version 1.126 and 1.132

version 1.126, 2015/02/06 16:06:25 version 1.132, 2015/03/17 07:33:07
Line 29 
Line 29 
 #include <ctype.h>  #include <ctype.h>
 #include <errno.h>  #include <errno.h>
 #include <fcntl.h>  #include <fcntl.h>
   #include <signal.h>
 #include <stdarg.h>  #include <stdarg.h>
 #include <stdint.h>  #include <stdint.h>
 #include <stdio.h>  #include <stdio.h>
Line 109  static const char * const mandocerrs[MANDOCERR_MAX] = 
Line 110  static const char * const mandocerrs[MANDOCERR_MAX] = 
         "no document body",          "no document body",
         "content before first section header",          "content before first section header",
         "first section is not \"NAME\"",          "first section is not \"NAME\"",
         "bad NAME section contents",          "NAME section without name",
           "NAME section without description",
           "description not at the end of NAME",
           "bad NAME section content",
         "missing description line, using \"\"",          "missing description line, using \"\"",
         "sections out of conventional order",          "sections out of conventional order",
         "duplicate section title",          "duplicate section title",
Line 399  mparse_buf_r(struct mparse *curp, struct buf blk, size
Line 403  mparse_buf_r(struct mparse *curp, struct buf blk, size
                                     MANDOCERR_CHAR_UNSUPP,                                      MANDOCERR_CHAR_UNSUPP,
                                     curp, curp->line, pos, "0x%x", c);                                      curp, curp->line, pos, "0x%x", c);
                                 i++;                                  i++;
                                 ln.buf[pos++] = '?';                                  if (c != '\r')
                                           ln.buf[pos++] = '?';
                                 continue;                                  continue;
                         }                          }
   
Line 632  read_whole_file(struct mparse *curp, const char *file,
Line 637  read_whole_file(struct mparse *curp, const char *file,
          */           */
   
         if (S_ISREG(st.st_mode)) {          if (S_ISREG(st.st_mode)) {
                 if (st.st_size >= (1U << 31)) {                  if (st.st_size > 0x7fffffff) {
                         mandoc_msg(MANDOCERR_TOOLARGE, curp, 0, 0, NULL);                          mandoc_msg(MANDOCERR_TOOLARGE, curp, 0, 0, NULL);
                         return(0);                          return(0);
                 }                  }
Line 842  mparse_open(struct mparse *curp, int *fd, const char *
Line 847  mparse_open(struct mparse *curp, int *fd, const char *
                         perror("dup");                          perror("dup");
                         exit((int)MANDOCLEVEL_SYSERR);                          exit((int)MANDOCLEVEL_SYSERR);
                 }                  }
                   signal(SIGPIPE, SIG_DFL);
                 execlp("gunzip", "gunzip", "-c", file, NULL);                  execlp("gunzip", "gunzip", "-c", file, NULL);
                 perror("exec");                  perror("exec");
                 exit((int)MANDOCLEVEL_SYSERR);                  exit((int)MANDOCLEVEL_SYSERR);
Line 864  mparse_wait(struct mparse *curp)
Line 870  mparse_wait(struct mparse *curp)
                 perror("wait");                  perror("wait");
                 exit((int)MANDOCLEVEL_SYSERR);                  exit((int)MANDOCLEVEL_SYSERR);
         }          }
           curp->child = 0;
         if (WIFSIGNALED(status)) {          if (WIFSIGNALED(status)) {
                 mandoc_vmsg(MANDOCERR_FILE, curp, 0, 0,                  mandoc_vmsg(MANDOCERR_FILE, curp, 0, 0,
                     "gunzip died from signal %d", WTERMSIG(status));                      "gunzip died from signal %d", WTERMSIG(status));

Legend:
Removed from v.1.126  
changed lines
  Added in v.1.132

CVSweb