diff --git a/Include/pyport.h b/Include/pyport.h index a6ddbeecfce..e02a5fdcbc5 100644 --- a/Include/pyport.h +++ b/Include/pyport.h @@ -666,6 +666,16 @@ extern int fdatasync(int); #ifdef __FreeBSD__ #include #if __FreeBSD_version > 500039 +# define _PY_PORT_CTYPE_UTF8_ISSUE +#endif +#endif + + +#if defined(__APPLE__) +# define _PY_PORT_CTYPE_UTF8_ISSUE +#endif + +#ifdef _PY_PORT_CTYPE_UTF8_ISSUE #include #include #undef isalnum @@ -683,7 +693,6 @@ extern int fdatasync(int); #undef toupper #define toupper(c) towupper(btowc(c)) #endif -#endif /* Declarations for symbol visibility. diff --git a/Lib/test/test_locale.py b/Lib/test/test_locale.py index 451040977ab..7f0f61d322b 100644 --- a/Lib/test/test_locale.py +++ b/Lib/test/test_locale.py @@ -10,7 +10,13 @@ enUS_locale = None def get_enUS_locale(): global enUS_locale if sys.platform == 'darwin': - raise unittest.SkipTest("Locale support on MacOSX is minimal") + import os + tlocs = ("en_US.UTF-8", "en_US.ISO8859-1", "en_US") + if int(os.uname()[2].split('.')[0]) < 10: + # The locale test work fine on OSX 10.6, I (ronaldoussoren) + # haven't had time yet to verify if tests work on OSX 10.5 + # (10.4 is known to be bad) + raise unittest.SkipTest("Locale support on MacOSX is minimal") if sys.platform.startswith("win"): tlocs = ("En", "English") else: diff --git a/Misc/NEWS b/Misc/NEWS index ca953c88368..edf2ab008d2 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -15,6 +15,8 @@ Core and Builtins - Issue #8417: Raise an OverflowError when an integer larger than sys.maxsize is passed to bytearray. +- Issue #7072: isspace(0xa0) is true on Mac OS X + Library -------