diff --git a/renderdoc/serialise/string_utils.cpp b/renderdoc/serialise/string_utils.cpp index 52dbc6f18..67ef4d7a4 100644 --- a/renderdoc/serialise/string_utils.cpp +++ b/renderdoc/serialise/string_utils.cpp @@ -99,3 +99,11 @@ std::string trim(const std::string &str) // searching from the start found something, so searching from the end must have too. return str.substr(start, end - start + 1); } + +bool endswith(const std::string &value, const std::string &ending) +{ + if(ending.length() > value.length()) + return false; + + return (0 == value.compare(value.length() - ending.length(), ending.length(), ending)); +} diff --git a/renderdoc/serialise/string_utils.h b/renderdoc/serialise/string_utils.h index 314603142..2fa7549e5 100644 --- a/renderdoc/serialise/string_utils.h +++ b/renderdoc/serialise/string_utils.h @@ -41,6 +41,8 @@ std::string trim(const std::string &str); uint32_t strhash(const char *str, uint32_t existingHash = 5381); +bool endswith(const std::string &value, const std::string &ending); + template strType basename(const strType &path) {