summaryrefslogtreecommitdiff
path: root/Python/fileutils.c
diff options
context:
space:
mode:
authorBenjamin Peterson <benjamin@python.org>2013-05-13 19:56:35 -0500
committerBenjamin Peterson <benjamin@python.org>2013-05-13 19:56:35 -0500
commit8f80c1e903fe00c00a8810c762a56f76bd3b3d04 (patch)
treeca18fccd415e143a13e3b0f82c34d689bedb13be /Python/fileutils.c
parent1078da07f5752919a55792b6b8489e6e846377fd (diff)
parentc15df25fef4ab764bf9ae2c0ca9453d0906037d8 (diff)
downloadcpython-8f80c1e903fe00c00a8810c762a56f76bd3b3d04.tar.gz
merge 3.3 (#17968)
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;