From 4ed24a06191a0dbf68bd72ad0fcc8d467b37f580 Mon Sep 17 00:00:00 2001 From: archshift Date: Sun, 7 Sep 2014 00:49:52 -0700 Subject: loader.cpp: improved file extension checking, made Upper/LowerStr useful Instead of forcibly taking the last 4 characters, it now finds the last extension separator (the period) and takes a substr of its location. --- src/common/string_util.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'src/common/string_util.cpp') diff --git a/src/common/string_util.cpp b/src/common/string_util.cpp index c1f22bda3..c489c868b 100644 --- a/src/common/string_util.cpp +++ b/src/common/string_util.cpp @@ -18,19 +18,15 @@ #endif /// Make a string lowercase -void LowerStr(char* str) { - for (int i = 0; str[i]; i++) { - str[i] = tolower(str[ i ]); - } +std::string LowerStr(std::string str) { + std::transform(str.begin(), str.end(), str.begin(), ::tolower); + return str; } /// Make a string uppercase -void UpperStr(char* str) { - for (int i=0; i < strlen(str); i++) { - if(str[i] >= 'a' && str[i] <= 'z') { - str[i] &= 0xDF; - } - } +std::string UpperStr(std::string str) { + std::transform(str.begin(), str.end(), str.begin(), ::toupper); + return str; } // faster than sscanf -- cgit v1.2.3 From 5472fd4d9b19011a36604a9c7f9c66f3ebe84e3f Mon Sep 17 00:00:00 2001 From: archshift Date: Sun, 7 Sep 2014 11:50:43 -0700 Subject: Added string_util to common, small changes in loader.cpp --- src/common/string_util.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/common/string_util.cpp') diff --git a/src/common/string_util.cpp b/src/common/string_util.cpp index c489c868b..bd4c33391 100644 --- a/src/common/string_util.cpp +++ b/src/common/string_util.cpp @@ -17,14 +17,16 @@ #include #endif +namespace Common { + /// Make a string lowercase -std::string LowerStr(std::string str) { +std::string ToLower(std::string str) { std::transform(str.begin(), str.end(), str.begin(), ::tolower); return str; } /// Make a string uppercase -std::string UpperStr(std::string str) { +std::string ToUpper(std::string str) { std::transform(str.begin(), str.end(), str.begin(), ::toupper); return str; } @@ -541,3 +543,5 @@ std::string UTF16ToUTF8(const std::wstring& input) } #endif + +} -- cgit v1.2.3