summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2014-10-01 17:15:11 (GMT)
committerGeorg Brandl <georg@python.org>2014-10-01 17:15:11 (GMT)
commitff3e5e3779ae6fab9f5d33149c95441eb847c196 (patch)
treefc9c35a851e24acff88fb5f80d14d1699c316b7f
parent51c116223e7698ce3cbbac46e8a6779aea8ec9c6 (diff)
downloadcpython-ff3e5e3779ae6fab9f5d33149c95441eb847c196.zip
cpython-ff3e5e3779ae6fab9f5d33149c95441eb847c196.tar.gz
cpython-ff3e5e3779ae6fab9f5d33149c95441eb847c196.tar.bz2
Fix unicode_aswidechar() for 4b unicode and 2b wchar_t (AIX).
-rw-r--r--Misc/NEWS6
-rw-r--r--Objects/unicodeobject.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 5b84414..14d9630 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -7,6 +7,12 @@ What's New in Python 3.2.6?
*Release date: TBD*
+Core and Builtins
+-----------------
+
+- Issue #19529: Fix a potential crash in converting Unicode objects to wchar_t
+ when Py_UNICODE is 4 bytes but wchar_t is 2 bytes, for example on AIX.
+
Library
-------
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index cd4e9e9..b798850 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -1267,7 +1267,7 @@ unicode_aswidechar(PyUnicodeObject *unicode,
Py_ssize_t nchar;
u = PyUnicode_AS_UNICODE(unicode);
- uend = u + PyUnicode_GET_SIZE(u);
+ uend = u + PyUnicode_GET_SIZE(unicode);
if (w != NULL) {
worig = w;
wend = w + size;