aboutsummaryrefslogtreecommitdiffstats
path: root/XAlloc.h
diff options
context:
space:
mode:
authorDaniel Lange <DLange@git.local>2020-08-27 07:48:10 +0200
committerDaniel Lange <DLange@git.local>2020-08-27 07:48:10 +0200
commitf3147ea2d1598914c2db53e8cfb34c8ff81e2ff4 (patch)
tree3ee82b2af2ab3d38b6e4b07f3994516aac72f742 /XAlloc.h
parentdf568a576f7b44ac5a2b9b7222c7f39d9932f626 (diff)
downloaddebian_htop-f3147ea2d1598914c2db53e8cfb34c8ff81e2ff4.tar.gz
debian_htop-f3147ea2d1598914c2db53e8cfb34c8ff81e2ff4.tar.bz2
debian_htop-f3147ea2d1598914c2db53e8cfb34c8ff81e2ff4.zip
New upstream version 3.0.0upstream/3.0.0
Diffstat (limited to 'XAlloc.h')
-rw-r--r--XAlloc.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/XAlloc.h b/XAlloc.h
index 2ebee1a..2d46405 100644
--- a/XAlloc.h
+++ b/XAlloc.h
@@ -11,11 +11,17 @@
#include <assert.h>
#include <stdlib.h>
-void* xMalloc(size_t size);
+extern void fail(void);
-void* xCalloc(size_t nmemb, size_t size);
+extern void* xMalloc(size_t size);
-void* xRealloc(void* ptr, size_t size);
+extern void* xCalloc(size_t nmemb, size_t size);
+
+extern void* xRealloc(void* ptr, size_t size);
+
+#undef xAsprintf
+
+#define xAsprintf(strp, fmt, ...) do { int _r=asprintf(strp, fmt, __VA_ARGS__); if (_r < 0) { fail(); } } while(0)
#define xSnprintf(fmt, len, ...) do { int _l=len; int _n=snprintf(fmt, _l, __VA_ARGS__); if (!(_n > -1 && _n < _l)) { curs_set(1); endwin(); err(1, NULL); } } while(0)
@@ -32,9 +38,9 @@ void* xRealloc(void* ptr, size_t size);
#endif
#if (__has_attribute(nonnull) || \
((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)))
-char* xStrdup_(const char* str) __attribute__((nonnull));
+extern char* xStrdup_(const char* str) __attribute__((nonnull));
#endif // __has_attribute(nonnull) || GNU C 3.3 or later
-char* xStrdup_(const char* str);
+extern char* xStrdup_(const char* str);
#endif

© 2014-2024 Faster IT GmbH | imprint | privacy policy