diff options
author | Max Kellermann <max@duempel.org> | 2014-02-17 22:37:43 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-02-17 22:37:43 +0100 |
commit | 579e48edbb3d897e04bcf50ef630cab597fe6d84 (patch) | |
tree | c8976480c3b149495fa23b84170921218294db82 /src/util | |
parent | 6a08f2281a66b3d41a02350d2ba75f453976faac (diff) | |
download | mpd-579e48edbb3d897e04bcf50ef630cab597fe6d84.tar.gz mpd-579e48edbb3d897e04bcf50ef630cab597fe6d84.tar.xz mpd-579e48edbb3d897e04bcf50ef630cab597fe6d84.zip |
util/StringUtil: add function Strip()
Replaces g_strstrip().
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/StringUtil.cxx | 14 | ||||
-rw-r--r-- | src/util/StringUtil.hxx | 7 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/util/StringUtil.cxx b/src/util/StringUtil.cxx index 57fc5188b..dfe436fd8 100644 --- a/src/util/StringUtil.cxx +++ b/src/util/StringUtil.cxx @@ -33,6 +33,20 @@ strchug_fast(const char *p) return p; } +char * +Strip(char *p) +{ + p = strchug_fast(p); + + size_t length = strlen(p); + while (length > 0 && IsWhitespaceNotNull(p[length - 1])) + --length; + + p[length] = 0; + + return p; +} + bool StringStartsWith(const char *haystack, const char *needle) { diff --git a/src/util/StringUtil.hxx b/src/util/StringUtil.hxx index 933d82c16..a48e2abc9 100644 --- a/src/util/StringUtil.hxx +++ b/src/util/StringUtil.hxx @@ -40,6 +40,13 @@ strchug_fast(char *p) return const_cast<char *>(strchug_fast((const char *)p)); } +/** + * Skip whitespace at the beginning and terminate the string after the + * last non-whitespace character. + */ +char * +Strip(char *p); + gcc_pure bool StringStartsWith(const char *haystack, const char *needle); |