]> git.sur5r.net Git - openldap/commitdiff
Fix ASCII detection; can't use "< 0x80" on a signed char.
authorHoward Chu <hyc@openldap.org>
Sat, 5 Jan 2002 10:33:38 +0000 (10:33 +0000)
committerHoward Chu <hyc@openldap.org>
Sat, 5 Jan 2002 10:33:38 +0000 (10:33 +0000)
include/ldap_pvt.h
include/ldap_pvt_uc.h

index 71fd9d8f8027069f00ddf4264c98bc94c6df5ec1..40f0f84e470843320ed8938f9582e269b471b2a8 100644 (file)
@@ -106,7 +106,7 @@ LDAP_F (void) ldap_pvt_hex_unescape LDAP_P(( char *s ));
  * these macros assume 'x' is an ASCII x
  * and assume the "C" locale
  */
-#define LDAP_ASCII(c)          ((c) < 0x80)
+#define LDAP_ASCII(c)          (!((c) & 0x80))
 #define LDAP_SPACE(c)          ((c) == ' ' || (c) == '\t' || (c) == '\n')
 #define LDAP_DIGIT(c)          ((c) >= '0' && (c) <= '9')
 #define LDAP_LOWER(c)          ((c) >= 'a' && (c) <= 'z')
index 5292207630f912e22b390009a5c4c33f825bcde1..8417b4441ba2884b134deb6872007f882d516546 100644 (file)
@@ -77,7 +77,7 @@ LDAP_F (char*) ldap_utf8_strtok( char* sp, const char* sep, char **last);
 /* Optimizations */
 LDAP_V (const char) ldap_utf8_lentab[128];
 
-#define LDAP_UTF8_ISASCII(p) ( *(unsigned char *)(p) ^ 0x80 )
+#define LDAP_UTF8_ISASCII(p) ( !(*(unsigned char *)(p) & 0x80 ) )
 #define LDAP_UTF8_CHARLEN(p) ( LDAP_UTF8_ISASCII(p) \
        ? 1 : ldap_utf8_lentab[*(unsigned char *)(p) ^ 0x80] )
 #define LDAP_UTF8_OFFSET(p) ( LDAP_UTF8_ISASCII(p) \