X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fstring-utils%2Fstring-utils.cpp;fp=src%2Fcommon%2Fstring-utils%2Fstring-utils.cpp;h=8dcc6b2aae9ce9fab7b3beeefbea0b495fc15db4;hp=3051644f34adf1a77853a7c63e2d3096318b6ff0;hb=4ff750609549a99f6b318ce600c42c90d4f2e480;hpb=d22ba1ec0497c9dbea3d7263d553be3547dfbe9f diff --git a/src/common/string-utils/string-utils.cpp b/src/common/string-utils/string-utils.cpp index 3051644f3..8dcc6b2aa 100644 --- a/src/common/string-utils/string-utils.cpp +++ b/src/common/string-utils/string-utils.cpp @@ -10,6 +10,8 @@ #include #include #include +#include +#include #include "string-utils.h" #include "../macros.h" @@ -373,3 +375,23 @@ size_t strutils_array_of_strings_len(char * const *array) return count; } + +int strutils_append_str(char **s, const char *append) +{ + char *old = *s; + char *new_str; + size_t oldlen = (old == NULL) ? 0 : strlen(old); + size_t appendlen = strlen(append); + + new_str = (char *) zmalloc(oldlen + appendlen + 1); + if (!new_str) { + return -ENOMEM; + } + if (oldlen) { + strcpy(new_str, old); + } + strcat(new_str, append); + *s = new_str; + free(old); + return 0; +}