From b19874e6f2c8894648c25efb0e9fa176b6688729 Mon Sep 17 00:00:00 2001 From: madmaxoft Date: Sun, 3 Aug 2014 22:19:43 +0200 Subject: Attempting a compilation fix for gcc / clang. --- src/StringUtils.cpp | 15 +++++++++++++++ src/StringUtils.h | 3 +++ 2 files changed, 18 insertions(+) diff --git a/src/StringUtils.cpp b/src/StringUtils.cpp index b0e5a4ffe..decce8065 100644 --- a/src/StringUtils.cpp +++ b/src/StringUtils.cpp @@ -230,6 +230,21 @@ AString & StrToLower(AString & s) +AString StrToLower(const AString & s) +{ + AString res; + res.resize(s.size()); + for (AString::iterator itr = res.begin(), end = res.end(); itr != end; ++itr) + { + *itr = (char)tolower(*itr); + } + return res; +} + + + + + int NoCaseCompare(const AString & s1, const AString & s2) { #ifdef _MSC_VER diff --git a/src/StringUtils.h b/src/StringUtils.h index 30b9904d1..65363382d 100644 --- a/src/StringUtils.h +++ b/src/StringUtils.h @@ -48,6 +48,9 @@ extern AString & StrToUpper(AString & s); /// In-place string conversion to lowercase; returns the same string extern AString & StrToLower(AString & s); +/** Returns a lower-cased copy of the string */ +extern AString StrToLower(const AString & s); + /// Case-insensitive string comparison; returns 0 if the strings are the same extern int NoCaseCompare(const AString & s1, const AString & s2); // tolua_export -- cgit v1.2.3