mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
* rename 'Standard Gaming Platform' to 'sgp' * Adapt CMakeLists.txt files to renamed SGP directory * Lowercase it
27 lines
517 B
C++
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);
|
|
}
|