Files
source/sgp/stringicmp.cpp
majcostaandGitHub 381ab936eb Rename 'Standard Gaming Platform' to 'sgp' (#246)
* rename 'Standard Gaming Platform' to 'sgp'

* Adapt CMakeLists.txt files to renamed SGP directory

* Lowercase it
2023-10-23 10:18:20 -03:00

27 lines
517 B
C++

//
// Snap: Implementation of case-insensitive string comparison classes
//
#include "stringicmp.h"
#include <ctype.h>
bool TStringiLess::operator() (std::string const& s1, std::string const& s2) const
{
// An MSVC compliance issue...
//using std::toupper;
const char *p1 = s1.c_str();
const char *p2 = s2.c_str();
while (*p1 && *p2 && toupper(*p1) == toupper(*p2)) {
++p1;
++p2;
}
if (!*p1) return *p2 != 0;
if (!*p2) return false;
return toupper(*p1) < toupper(*p2);
}