diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2013-03-06 01:09:24 +0100 |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2013-03-06 01:09:24 +0100 |
commit | cf77da9fb5a0b23c92c5005b13944f680aa0f325 (patch) | |
tree | c92d86dc211f8f51b08cda4cd7eea39d24c957e1 | |
parent | 313cac88c524dd1d3c9810109de3f9c310d73413 (diff) | |
download | cpython-git-cf77da9fb5a0b23c92c5005b13944f680aa0f325.tar.gz |
Backed out changeset b9f7b1bf36aa
-rw-r--r-- | Misc/NEWS | 3 | ||||
-rw-r--r-- | Objects/unicodeobject.c | 19 |
2 files changed, 7 insertions, 15 deletions
@@ -10,9 +10,6 @@ What's New in Python 3.4.0 Alpha 1? Core and Builtins ----------------- -- Issue #17223: Fix PyUnicode_FromUnicode() on Windows (16-bit wchar_t type) - to reject invalid UTF-16 surrogate. - - Issue #17032: The "global" in the "NameError: global name 'x' is not defined" error message has been removed. Patch by Ram Rachum. diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 00a6a36fcd..2175655039 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -1384,18 +1384,13 @@ find_maxchar_surrogates(const wchar_t *begin, const wchar_t *end, for (iter = begin; iter < end; ) { #if SIZEOF_WCHAR_T == 2 - if (Py_UNICODE_IS_HIGH_SURROGATE(iter[0])) { - if ((iter+1) < end - && Py_UNICODE_IS_LOW_SURROGATE(iter[1])) - { - ch = Py_UNICODE_JOIN_SURROGATES(iter[0], iter[1]); - ++(*num_surrogates); - iter += 2; - } - else { - PyErr_SetString(PyExc_ValueError, "illegal UTF-16 surrogate"); - return -1; - } + if (Py_UNICODE_IS_HIGH_SURROGATE(iter[0]) + && (iter+1) < end + && Py_UNICODE_IS_LOW_SURROGATE(iter[1])) + { + ch = Py_UNICODE_JOIN_SURROGATES(iter[0], iter[1]); + ++(*num_surrogates); + iter += 2; } else #endif |