aboutsummaryrefslogtreecommitdiffstats
path: root/src/util/StringUtil.cxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2015-10-16 19:15:30 +0200
committerMax Kellermann <max@duempel.org>2015-10-16 19:18:04 +0200
commit607c2c5ba2c19f29c94690c5cc1e28c894286f70 (patch)
tree74dc5ed9e277f4ff2cabc0b344d63c62b500f8b4 /src/util/StringUtil.cxx
parent85f58eb0821dc30207afd21cb8dc087c2a450e28 (diff)
downloadmpd-607c2c5ba2c19f29c94690c5cc1e28c894286f70.tar.gz
mpd-607c2c5ba2c19f29c94690c5cc1e28c894286f70.tar.xz
mpd-607c2c5ba2c19f29c94690c5cc1e28c894286f70.zip
util/StringUtil: add StringAfterPrefix()
Diffstat (limited to 'src/util/StringUtil.cxx')
-rw-r--r--src/util/StringUtil.cxx16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/util/StringUtil.cxx b/src/util/StringUtil.cxx
index bb454e904..b9c99eb4a 100644
--- a/src/util/StringUtil.cxx
+++ b/src/util/StringUtil.cxx
@@ -18,6 +18,7 @@
*/
#include "StringUtil.hxx"
+#include "StringAPI.hxx"
#include "CharUtil.hxx"
#include "ASCII.hxx"
@@ -45,6 +46,21 @@ StringEndsWith(const char *haystack, const char *needle)
}
const char *
+StringAfterPrefix(const char *string, const char *prefix)
+{
+#if !CLANG_CHECK_VERSION(3,6)
+ /* disabled on clang due to -Wtautological-pointer-compare */
+ assert(string != nullptr);
+ assert(prefix != nullptr);
+#endif
+
+ size_t prefix_length = strlen(prefix);
+ return StringIsEqual(string, prefix, prefix_length)
+ ? string + prefix_length
+ : nullptr;
+}
+
+const char *
FindStringSuffix(const char *p, const char *suffix)
{
const size_t p_length = strlen(p);