summaryrefslogtreecommitdiff
path: root/Python/fileutils.c
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2013-05-12 12:37:12 +0200
committerGeorg Brandl <georg@python.org>2013-05-12 12:37:12 +0200
commitae72fa2a1b7a8f4374cea8cf6586be9343d1bbad (patch)
tree26ab0e5d0884e88fba365c8e2fb8f11064945701 /Python/fileutils.c
parent900055b1dba8c7c638319989d725486bee4f40e8 (diff)
parent6222ea4bbaa2b9c856d972880b6d0c1bc1f5a50f (diff)
downloadcpython-ae72fa2a1b7a8f4374cea8cf6586be9343d1bbad.tar.gz
merge with 3.3
Diffstat (limited to 'Python/fileutils.c')
-rw-r--r--Python/fileutils.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/Python/fileutils.c b/Python/fileutils.c
index b7c42e8e85..bb0cd43500 100644
--- a/Python/fileutils.c
+++ b/Python/fileutils.c
@@ -60,7 +60,7 @@ extern int _Py_normalize_encoding(const char *, char *, size_t);
workaround is also enabled on error, for example if getting the locale
failed.
- Values of locale_is_ascii:
+ Values of force_ascii:
1: the workaround is used: _Py_wchar2char() uses
encode_ascii_surrogateescape() and _Py_char2wchar() uses
@@ -254,9 +254,9 @@ _Py_char2wchar(const char* arg, size_t *size)
wchar_t *res;
size_t argsize;
size_t count;
+#ifdef HAVE_MBRTOWC
unsigned char *in;
wchar_t *out;
-#ifdef HAVE_MBRTOWC
mbstate_t mbs;
#endif
@@ -292,7 +292,7 @@ _Py_char2wchar(const char* arg, size_t *size)
/* Only use the result if it contains no
surrogate characters. */
for (tmp = res; *tmp != 0 &&
- (*tmp < 0xd800 || *tmp > 0xdfff); tmp++)
+ !Py_UNICODE_IS_SURROGATE(*tmp); tmp++)
;
if (*tmp == 0) {
if (size != NULL)
@@ -338,7 +338,7 @@ _Py_char2wchar(const char* arg, size_t *size)
memset(&mbs, 0, sizeof mbs);
continue;
}
- if (*out >= 0xd800 && *out <= 0xdfff) {
+ if (Py_UNICODE_IS_SURROGATE(*out)) {
/* Surrogate character. Escape the original
byte sequence with surrogateescape. */
argsize -= converted;