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

Diff for /mandoc/mandoc_aux.c between version 1.1 and 1.11

version 1.1, 2014/03/23 11:59:17 version 1.11, 2018/02/07 20:04:57
Line 1 
Line 1 
 /*      $Id$ */  /*      $Id$ */
 /*  /*
  * Copyright (c) 2009, 2011 Kristaps Dzonsons <kristaps@bsd.lv>   * Copyright (c) 2009, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>   * Copyright (c) 2014, 2015, 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 15 
Line 15 
  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */   */
   #include "config.h"
   
 #include <sys/types.h>  #include <sys/types.h>
   
   #if HAVE_ERR
   #include <err.h>
   #endif
 #include <stdarg.h>  #include <stdarg.h>
 #include <stdlib.h>  #include <stdlib.h>
 #include <stdio.h>  #include <stdio.h>
Line 25 
Line 30 
 #include "mandoc.h"  #include "mandoc.h"
 #include "mandoc_aux.h"  #include "mandoc_aux.h"
   
   
 int  int
 mandoc_asprintf(char **dest, const char *fmt, ...)  mandoc_asprintf(char **dest, const char *fmt, ...)
 {  {
Line 35  mandoc_asprintf(char **dest, const char *fmt, ...)
Line 41  mandoc_asprintf(char **dest, const char *fmt, ...)
         ret = vasprintf(dest, fmt, ap);          ret = vasprintf(dest, fmt, ap);
         va_end(ap);          va_end(ap);
   
         if (-1 == ret) {          if (ret == -1)
                 perror(NULL);                  err((int)MANDOCLEVEL_SYSERR, NULL);
                 exit((int)MANDOCLEVEL_SYSERR);          return ret;
         }  
         return(ret);  
 }  }
   
 void *  void *
Line 48  mandoc_calloc(size_t num, size_t size)
Line 52  mandoc_calloc(size_t num, size_t size)
         void    *ptr;          void    *ptr;
   
         ptr = calloc(num, size);          ptr = calloc(num, size);
         if (NULL == ptr) {          if (ptr == NULL)
                 perror(NULL);                  err((int)MANDOCLEVEL_SYSERR, NULL);
                 exit((int)MANDOCLEVEL_SYSERR);          return ptr;
         }  
         return(ptr);  
 }  }
   
 void *  void *
Line 61  mandoc_malloc(size_t size)
Line 63  mandoc_malloc(size_t size)
         void    *ptr;          void    *ptr;
   
         ptr = malloc(size);          ptr = malloc(size);
         if (NULL == ptr) {          if (ptr == NULL)
                 perror(NULL);                  err((int)MANDOCLEVEL_SYSERR, NULL);
                 exit((int)MANDOCLEVEL_SYSERR);          return ptr;
         }  
         return(ptr);  
 }  }
   
 void *  void *
 mandoc_realloc(void *ptr, size_t size)  mandoc_realloc(void *ptr, size_t size)
 {  {
   
         ptr = realloc(ptr, size);          ptr = realloc(ptr, size);
         if (NULL == ptr) {          if (ptr == NULL)
                 perror(NULL);                  err((int)MANDOCLEVEL_SYSERR, NULL);
                 exit((int)MANDOCLEVEL_SYSERR);          return ptr;
         }  
         return(ptr);  
 }  }
   
   void *
   mandoc_reallocarray(void *ptr, size_t num, size_t size)
   {
           ptr = reallocarray(ptr, num, size);
           if (ptr == NULL)
                   err((int)MANDOCLEVEL_SYSERR, NULL);
           return ptr;
   }
   
   void *
   mandoc_recallocarray(void *ptr, size_t oldnum, size_t num, size_t size)
   {
           ptr = recallocarray(ptr, oldnum, num, size);
           if (ptr == NULL)
                   err((int)MANDOCLEVEL_SYSERR, NULL);
           return ptr;
   }
   
 char *  char *
 mandoc_strdup(const char *ptr)  mandoc_strdup(const char *ptr)
 {  {
         char    *p;          char    *p;
   
         p = strdup(ptr);          p = strdup(ptr);
         if (NULL == p) {          if (p == NULL)
                 perror(NULL);                  err((int)MANDOCLEVEL_SYSERR, NULL);
                 exit((int)MANDOCLEVEL_SYSERR);          return p;
         }  
         return(p);  
 }  }
   
 char *  char *
Line 98  mandoc_strndup(const char *ptr, size_t sz)
Line 111  mandoc_strndup(const char *ptr, size_t sz)
 {  {
         char    *p;          char    *p;
   
         p = mandoc_malloc(sz + 1);          p = strndup(ptr, sz);
         memcpy(p, ptr, sz);          if (p == NULL)
         p[(int)sz] = '\0';                  err((int)MANDOCLEVEL_SYSERR, NULL);
         return(p);          return p;
 }  }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.11

CVSweb