]> git.meshlink.io Git - meshlink/blobdiff - src/xalloc.h
Avoid allocating packet buffers unnecessarily.
[meshlink] / src / xalloc.h
index e521d64a203d3b82c98a6c6e08d7510db24a832c..948723e30f5d7733eadaa167b92afe5d798d1098 100644 (file)
@@ -2,7 +2,7 @@
 #define MESHLINK_XALLOC_H
 
 /*
-   xalloc.h -- malloc and related fuctions with out of memory checking
+   xalloc.h -- malloc and related functions with out of memory checking
    Copyright (C) 2014, 2017 Guus Sliepen <guus@meshlink.io>
 
    This program is free software; you can redistribute it and/or modify
 static inline void *xmalloc(size_t n) __attribute__((__malloc__));
 static inline void *xmalloc(size_t n) {
        void *p = malloc(n);
-       if(!p)
+
+       if(!p) {
                abort();
+       }
+
        return p;
 }
 
 static inline void *xzalloc(size_t n) __attribute__((__malloc__));
 static inline void *xzalloc(size_t n) {
        void *p = calloc(1, n);
-       if(!p)
+
+       if(!p) {
                abort();
+       }
+
        return p;
 }
 
 static inline void *xrealloc(void *p, size_t n) {
        p = realloc(p, n);
-       if(!p)
+
+       if(!p) {
                abort();
+       }
+
        return p;
 }
 
 static inline char *xstrdup(const char *s) __attribute__((__malloc__));
 static inline char *xstrdup(const char *s) {
        char *p = strdup(s);
-       if(!p)
+
+       if(!p) {
                abort();
+       }
+
        return p;
 }
 
@@ -55,13 +67,19 @@ static inline int xvasprintf(char **strp, const char *fmt, va_list ap) {
 #ifdef HAVE_MINGW
        char buf[1024];
        int result = vsnprintf(buf, sizeof(buf), fmt, ap);
-       if(result < 0)
+
+       if(result < 0) {
                abort();
+       }
+
        *strp = xstrdup(buf);
 #else
        int result = vasprintf(strp, fmt, ap);
-       if(result < 0)
+
+       if(result < 0) {
                abort();
+       }
+
 #endif
        return result;
 }