Fix warnings, fix possible problems with characters outside of ASCII
This commit is contained in:
@@ -258,13 +258,13 @@ struct char_traits_char_nocase: public char_traits<char>
|
|||||||
static char uptab[256];
|
static char uptab[256];
|
||||||
|
|
||||||
static inline bool eq( char c1, char c2 )
|
static inline bool eq( char c1, char c2 )
|
||||||
{ return uptab[c1] == uptab[c2]; }
|
{ return uptab[(unsigned char)c1] == uptab[(unsigned char)c2]; }
|
||||||
|
|
||||||
static inline bool ne( char c1, char c2 )
|
static inline bool ne( char c1, char c2 )
|
||||||
{ return uptab[c1] != uptab[c2]; }
|
{ return uptab[(unsigned char)c1] != uptab[(unsigned char)c2]; }
|
||||||
|
|
||||||
static inline bool lt( char c1, char c2 )
|
static inline bool lt( char c1, char c2 )
|
||||||
{ return uptab[c1] < uptab[c2]; }
|
{ return uptab[(unsigned char)c1] < uptab[(unsigned char)c2]; }
|
||||||
|
|
||||||
static int compare( const char* s1, const char* s2, size_t n )
|
static int compare( const char* s1, const char* s2, size_t n )
|
||||||
{
|
{
|
||||||
@@ -280,9 +280,7 @@ struct char_traits_char_nocase: public char_traits<char>
|
|||||||
|
|
||||||
static inline char fasttoupper(char a)
|
static inline char fasttoupper(char a)
|
||||||
{
|
{
|
||||||
if(a < 'a' || a > 'z')
|
return uptab[(unsigned char)a];
|
||||||
return a;
|
|
||||||
return a+('A'-'a');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const char *find( const char* s, int n, char a )
|
static const char *find( const char* s, int n, char a )
|
||||||
|
|||||||
Reference in New Issue
Block a user