From 4272a5299a6d7db5bcb5e894c88f3c1fded234eb Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Mon, 5 Jul 2021 19:32:37 -0500 Subject: [PATCH] add dupeString wrapper function This function calls strdup and exits on failure. --- src/stringhandling.c | 11 +++++++++++ src/stringhandling.h | 1 + 2 files changed, 12 insertions(+) diff --git a/src/stringhandling.c b/src/stringhandling.c index 86ed965..096b870 100644 --- a/src/stringhandling.c +++ b/src/stringhandling.c @@ -62,6 +62,17 @@ void *reallocMem(void *p, size_t n) return s; } +char *dupeString(char *s) +{ + char *c; + + if (!(c = strdup(s))) { + fprintf(stderr, "Out of memory!\n"); + exit(1); + } + return c; +} + char *initString(int *l) { *l = 0; diff --git a/src/stringhandling.h b/src/stringhandling.h index d138933..7f104ef 100644 --- a/src/stringhandling.h +++ b/src/stringhandling.h @@ -26,6 +26,7 @@ extern char *EMPTYSTRING; void *allocMem(size_t n); void *reallocMem(void *p, size_t n); +char *dupeString(char *s); char *initString(int *l); void stringAndString(char **s, int *l, const char *t); void stringAndBytes(char **s, int *l, const char *t, int cnt);