summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@wyplay.com>2012-02-22 12:36:20 (GMT)
committerVictor Stinner <vstinner@wyplay.com>2012-02-22 12:36:20 (GMT)
commit15e9ed299c5cd8adca21ac5e8e9691eacc731700 (patch)
tree484eaf25810d0fed84bcabb707dfe8201445be8a /Objects
parent6721149501a68ab52c7d1f83300ecd6d5656cbb3 (diff)
downloadcpython-15e9ed299c5cd8adca21ac5e8e9691eacc731700.zip
cpython-15e9ed299c5cd8adca21ac5e8e9691eacc731700.tar.gz
cpython-15e9ed299c5cd8adca21ac5e8e9691eacc731700.tar.bz2
PyUnicode_New() and unicode_putchar() check for MAX_UNICODE maximum (U+10FFFF)
Diffstat (limited to 'Objects')
-rw-r--r--Objects/unicodeobject.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index a42aad9..afe7a9f 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -998,6 +998,7 @@ PyUnicode_New(Py_ssize_t size, Py_UCS4 maxchar)
is_sharing = 1;
}
else {
+ assert(maxchar <= MAX_UNICODE);
kind_state = PyUnicode_4BYTE_KIND;
char_size = 4;
if (sizeof(wchar_t) == 4)
@@ -1627,6 +1628,7 @@ static int
unicode_putchar(PyObject **p_unicode, Py_ssize_t *pos,
Py_UCS4 ch)
{
+ assert(ch <= MAX_UNICODE);
if (unicode_widen(p_unicode, ch) < 0)
return -1;
PyUnicode_WRITE(PyUnicode_KIND(*p_unicode),