I see no reason to have a copy of Stricmp from string.h in here when the
same thing was accomplished with macros about 10 lines below it. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -324,48 +324,7 @@ typedef unsigned char wxUChar;
|
||||
|
||||
// string.h functions
|
||||
// #define wxStricmp strcasecmp
|
||||
|
||||
// Taken from string.h since it tests for platform more correctly
|
||||
// portable strcasecmp/_stricmp
|
||||
inline int WXDLLEXPORT wxStricmp(const char *psz1, const char *psz2)
|
||||
{
|
||||
#if defined(__VISUALC__) || ( defined(__MWERKS__) && defined(__INTEL__) )
|
||||
return _stricmp(psz1, psz2);
|
||||
#elif defined(__SC__)
|
||||
return _stricmp(psz1, psz2);
|
||||
#elif defined(__SALFORDC__)
|
||||
return stricmp(psz1, psz2);
|
||||
#elif defined(__BORLANDC__)
|
||||
return stricmp(psz1, psz2);
|
||||
#elif defined(__WATCOMC__)
|
||||
return stricmp(psz1, psz2);
|
||||
#elif defined(__UNIX__) || defined(__GNUWIN32__)
|
||||
return strcasecmp(psz1, psz2);
|
||||
#elif defined(__MWERKS__) && !defined(__INTEL__)
|
||||
register char c1, c2;
|
||||
do {
|
||||
c1 = tolower(*psz1++);
|
||||
c2 = tolower(*psz2++);
|
||||
} while ( c1 && (c1 == c2) );
|
||||
|
||||
return c1 - c2;
|
||||
#else
|
||||
// almost all compilers/libraries provide this function (unfortunately under
|
||||
// different names), that's why we don't implement our own which will surely
|
||||
// be more efficient than this code (uncomment to use):
|
||||
/*
|
||||
register char c1, c2;
|
||||
do {
|
||||
c1 = tolower(*psz1++);
|
||||
c2 = tolower(*psz2++);
|
||||
} while ( c1 && (c1 == c2) );
|
||||
|
||||
return c1 - c2;
|
||||
*/
|
||||
|
||||
#error "Please define string case-insensitive compare for your OS/compiler"
|
||||
#endif // OS/compiler
|
||||
}
|
||||
// wxStricmp is defined below!!
|
||||
|
||||
// #define wxStrtok strtok_r // this needs a configure check
|
||||
|
||||
|
Reference in New Issue
Block a user