summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/WStringCompare.hxx17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/util/WStringCompare.hxx b/src/util/WStringCompare.hxx
index 75c01661d..4b3a83f55 100644
--- a/src/util/WStringCompare.hxx
+++ b/src/util/WStringCompare.hxx
@@ -91,6 +91,14 @@ StringAfterPrefix(const wchar_t *haystack, WStringView needle) noexcept
: nullptr;
}
+gcc_pure gcc_nonnull_all
+static inline bool
+StringStartsWithIgnoreCase(const wchar_t *haystack,
+ WStringView needle) noexcept
+{
+ return StringIsEqualIgnoreCase(haystack, needle.data, needle.size);
+}
+
/**
* Returns the portion of the string after a prefix. If the string
* does not begin with the specified prefix, this function returns
@@ -98,11 +106,12 @@ StringAfterPrefix(const wchar_t *haystack, WStringView needle) noexcept
* This function is case-independent.
*/
gcc_pure gcc_nonnull_all
-static inline bool
-StringStartsWithIgnoreCase(const wchar_t *haystack,
- WStringView needle) noexcept
+static inline const wchar_t *
+StringAfterPrefixIgnoreCase(const wchar_t *haystack, WStringView needle) noexcept
{
- return StringIsEqualIgnoreCase(haystack, needle.data, needle.size);
+ return StringStartsWithIgnoreCase(haystack, needle)
+ ? haystack + needle.size
+ : nullptr;
}
/**