Merge pull request #746 from 3adev/fix-trim-in-preprocessor

Fix trim() in lib/Preprocessor.cpp
This commit is contained in:
Daniel Marjamäki 2016-01-04 16:58:12 +01:00
commit 97dccefe3d
1 changed files with 2 additions and 3 deletions

View File

@ -2414,16 +2414,15 @@ static void skipstring(const std::string &line, std::string::size_type &pos)
/** /**
* Remove heading and trailing whitespaces from the input parameter. * Remove heading and trailing whitespaces from the input parameter.
* If string is all spaces/tabs, return empty string.
* @param s The string to trim. * @param s The string to trim.
*/ */
static std::string trim(const std::string& s) static std::string trim(const std::string& s)
{ {
const std::string::size_type beg = s.find_first_not_of(" \t"); const std::string::size_type beg = s.find_first_not_of(" \t");
if (beg == std::string::npos) if (beg == std::string::npos)
return s; return "";
const std::string::size_type end = s.find_last_not_of(" \t"); const std::string::size_type end = s.find_last_not_of(" \t");
if (end == std::string::npos)
return s.substr(beg);
return s.substr(beg, end - beg + 1); return s.substr(beg, end - beg + 1);
} }