diff options
Diffstat (limited to 'source3/lib/util.c')
-rw-r--r-- | source3/lib/util.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c index cd170ff3d3..90bb462d0e 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -1649,9 +1649,9 @@ void *xmalloc(size_t size) { void *p; if (size == 0) - smb_panic("xmalloc called with zero size.\n"); + smb_panic("xmalloc: called with zero size.\n"); if ((p = malloc(size)) == NULL) - smb_panic("xmalloc malloc fail.\n"); + smb_panic("xmalloc: malloc fail.\n"); return p; } @@ -1668,6 +1668,18 @@ void *xmemdup(void *p, size_t size) } /***************************************************************** + strdup that aborts on malloc fail. + *****************************************************************/ + +char *xstrdup(const char *s) +{ + char *s1 = strdup(s); + if (!s1) + smb_panic("xstrdup: malloc fail\n"); + return s1; +} + +/***************************************************************** like strdup but for memory *****************************************************************/ void *memdup(void *p, size_t size) |