diff options
author | Max Kellermann <max@duempel.org> | 2013-11-28 18:48:35 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2013-11-28 18:48:35 +0100 |
commit | af4133e3c92c78cc19ff14b876be6afcab1db091 (patch) | |
tree | da38387995bde630b20f81a717862ae21d19bb48 /src/util | |
parent | a788b7e747bc21b9aadee45dd028fa6198af794e (diff) | |
download | mpd-af4133e3c92c78cc19ff14b876be6afcab1db091.tar.gz mpd-af4133e3c92c78cc19ff14b876be6afcab1db091.tar.xz mpd-af4133e3c92c78cc19ff14b876be6afcab1db091.zip |
Util/StringUtil: add StringStartsWith()
Replaces GLib's g_str_has_prefix().
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/StringUtil.cxx | 8 | ||||
-rw-r--r-- | src/util/StringUtil.hxx | 4 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/util/StringUtil.cxx b/src/util/StringUtil.cxx index 7e295bf90..512a75f5c 100644 --- a/src/util/StringUtil.cxx +++ b/src/util/StringUtil.cxx @@ -22,6 +22,7 @@ #include "ASCII.hxx" #include <assert.h> +#include <string.h> const char * strchug_fast(const char *p) @@ -33,6 +34,13 @@ strchug_fast(const char *p) } bool +StringStartsWith(const char *haystack, const char *needle) +{ + const size_t length = strlen(needle); + return memcmp(haystack, needle, length) == 0; +} + +bool string_array_contains(const char *const* haystack, const char *needle) { assert(haystack != nullptr); diff --git a/src/util/StringUtil.hxx b/src/util/StringUtil.hxx index 1c67910a9..f25160107 100644 --- a/src/util/StringUtil.hxx +++ b/src/util/StringUtil.hxx @@ -40,6 +40,10 @@ strchug_fast(char *p) return const_cast<char *>(strchug_fast((const char *)p)); } +gcc_pure +bool +StringStartsWith(const char *haystack, const char *needle); + /** * Checks whether a string array contains the specified string. * |