diff options
Diffstat (limited to 'src/util/StringUtil.cxx')
-rw-r--r-- | src/util/StringUtil.cxx | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/util/StringUtil.cxx b/src/util/StringUtil.cxx index 9a1a74f86..50885a34a 100644 --- a/src/util/StringUtil.cxx +++ b/src/util/StringUtil.cxx @@ -21,6 +21,8 @@ #include "CharUtil.hxx" #include "ASCII.hxx" +#include <algorithm> + #include <assert.h> #include <string.h> @@ -65,6 +67,18 @@ StringEndsWith(const char *haystack, const char *needle) needle, needle_length) == 0; } +char * +CopyString(char *gcc_restrict dest, const char *gcc_restrict src, size_t size) +{ + size_t length = strlen(src); + if (length >= size) + length = size - 1; + + char *p = std::copy(src, src + length, dest); + *p = '\0'; + return p; +} + bool string_array_contains(const char *const* haystack, const char *needle) { |