Mercurial > cpython-lru_cache-weakref
diff Objects/unicodeobject.c @ 63439:dbc8da813630 3.1
Merged revisions 83395,83417 via svnmerge from
svn+ssh://svn.python.org/python/branches/py3k
........
r83395 | georg.brandl | 2010-08-01 10:49:18 +0200 (So, 01 Aug 2010) | 1 line
#8821: do not rely on Unicode strings being terminated with a \u0000, rather explicitly check range before looking for a second surrogate character.
........
r83417 | georg.brandl | 2010-08-01 20:38:26 +0200 (So, 01 Aug 2010) | 1 line
#5776: fix mistakes in python specfile. (Nobody probably uses it anyway.)
........
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Sun, 01 Aug 2010 18:59:44 +0000 |
| parents | 5cff058d6ced |
| children | 5af361adaae9 |
line wrap: on
line diff
--- a/Objects/unicodeobject.c Sun Aug 01 18:56:30 2010 +0000 +++ b/Objects/unicodeobject.c Sun Aug 01 18:59:44 2010 +0000 @@ -3597,7 +3597,7 @@ ch2 = *s++; size--; - if (ch2 >= 0xDC00 && ch2 <= 0xDFFF) { + if (ch2 >= 0xDC00 && ch2 <= 0xDFFF && size) { ucs = (((ch & 0x03FF) << 10) | (ch2 & 0x03FF)) + 0x00010000; *p++ = '\\'; *p++ = 'U'; @@ -3839,7 +3839,7 @@ ch2 = *s++; size--; - if (ch2 >= 0xDC00 && ch2 <= 0xDFFF) { + if (ch2 >= 0xDC00 && ch2 <= 0xDFFF && size) { ucs = (((ch & 0x03FF) << 10) | (ch2 & 0x03FF)) + 0x00010000; *p++ = '\\'; *p++ = 'U';
