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

Diff for /mandoc/mandoc.c between version 1.28 and 1.35

version 1.28, 2010/08/16 09:37:58 version 1.35, 2010/09/04 20:18:53
Line 55  mandoc_special(char *p)
Line 55  mandoc_special(char *p)
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('x'):          case ('x'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('w'):  
                 /* FALLTHROUGH */  
         case ('S'):          case ('S'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('R'):          case ('R'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('o'):  
                 /* FALLTHROUGH */  
         case ('N'):          case ('N'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('l'):          case ('l'):
Line 130  mandoc_special(char *p)
Line 126  mandoc_special(char *p)
                         p++;                          p++;
                 }                  }
   
                   /* Handle embedded numerical subexp or escape. */
   
                   if ('(' == *p) {
                           while (*p && ')' != *p)
                                   if ('\\' == *p++) {
                                           i = mandoc_special(--p);
                                           if (0 == i)
                                                   return(0);
                                           p += i;
                                   }
   
                           if (')' == *p++)
                                   break;
   
                           return(0);
                   } else if ('\\' == *p) {
                           if (0 == (i = mandoc_special(p)))
                                   return(0);
                           p += i;
                   }
   
                 break;                  break;
 #if 0  #if 0
         case ('Y'):          case ('Y'):
Line 140  mandoc_special(char *p)
Line 157  mandoc_special(char *p)
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('n'):          case ('n'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
   #endif
         case ('k'):          case ('k'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
 #endif  
         case ('M'):          case ('M'):
                 /* FALLTHROUGH */                  /* FALLTHROUGH */
         case ('m'):          case ('m'):
Line 171  mandoc_special(char *p)
Line 188  mandoc_special(char *p)
         case ('['):          case ('['):
                 term = ']';                  term = ']';
                 break;                  break;
           case ('z'):
                   len = 1;
                   if ('\\' == *p) {
                           if (0 == (i = mandoc_special(p)))
                                   return(0);
                           p += i;
                           return(*p ? (int)(p - sv) : 0);
                   }
                   break;
           case ('o'):
                   /* FALLTHROUGH */
           case ('w'):
                   if ('\'' == *p++) {
                           term = '\'';
                           break;
                   }
                   /* FALLTHROUGH */
         default:          default:
                 len = 1;                  len = 1;
                 p--;                  p--;
Line 199  mandoc_calloc(size_t num, size_t size)
Line 233  mandoc_calloc(size_t num, size_t size)
         ptr = calloc(num, size);          ptr = calloc(num, size);
         if (NULL == ptr) {          if (NULL == ptr) {
                 perror(NULL);                  perror(NULL);
                 exit(EXIT_FAILURE);                  exit((int)MANDOCLEVEL_SYSERR);
         }          }
   
         return(ptr);          return(ptr);
Line 214  mandoc_malloc(size_t size)
Line 248  mandoc_malloc(size_t size)
         ptr = malloc(size);          ptr = malloc(size);
         if (NULL == ptr) {          if (NULL == ptr) {
                 perror(NULL);                  perror(NULL);
                 exit(EXIT_FAILURE);                  exit((int)MANDOCLEVEL_SYSERR);
         }          }
   
         return(ptr);          return(ptr);
Line 228  mandoc_realloc(void *ptr, size_t size)
Line 262  mandoc_realloc(void *ptr, size_t size)
         ptr = realloc(ptr, size);          ptr = realloc(ptr, size);
         if (NULL == ptr) {          if (NULL == ptr) {
                 perror(NULL);                  perror(NULL);
                 exit(EXIT_FAILURE);                  exit((int)MANDOCLEVEL_SYSERR);
         }          }
   
         return(ptr);          return(ptr);
Line 243  mandoc_strdup(const char *ptr)
Line 277  mandoc_strdup(const char *ptr)
         p = strdup(ptr);          p = strdup(ptr);
         if (NULL == p) {          if (NULL == p) {
                 perror(NULL);                  perror(NULL);
                 exit(EXIT_FAILURE);                  exit((int)MANDOCLEVEL_SYSERR);
         }          }
   
         return(p);          return(p);

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.35

CVSweb