diff --git a/main.c b/main.c index a0f46113..a34b2420 100644 --- a/main.c +++ b/main.c @@ -419,3 +419,16 @@ tvh_str_set(char **strp, const char *src) *strp = src ? strdup(src) : NULL; } + +/** + * + */ +void +tvh_str_update(char **strp, const char *src) +{ + if(src == NULL) + return; + free(*strp); + *strp = strdup(src); +} + diff --git a/tvhead.h b/tvhead.h index d4b6b585..aee0e467 100644 --- a/tvhead.h +++ b/tvhead.h @@ -906,6 +906,7 @@ static inline unsigned int tvh_strhash(const char *s, unsigned int mod) #define MAX(a,b) ((a) > (b) ? (a) : (b)) void tvh_str_set(char **strp, const char *src); +void tvh_str_update(char **strp, const char *src); void tvhlog(int severity, const char *subsys, const char *fmt, ...);