Fix out of bound read in UTF-32 decoder on "narrow Unicode" builds.

This commit is contained in:
Serhiy Storchaka 2013-01-08 22:43:18 +02:00
parent be2b907ce2
commit c9631a14d7
1 changed files with 1 additions and 1 deletions

View File

@ -2272,7 +2272,7 @@ PyUnicode_DecodeUTF32Stateful(const char *s,
/* On narrow builds we split characters outside the BMP into two /* On narrow builds we split characters outside the BMP into two
codepoints => count how much extra space we need. */ codepoints => count how much extra space we need. */
#ifndef Py_UNICODE_WIDE #ifndef Py_UNICODE_WIDE
for (qq = q; qq < e; qq += 4) for (qq = q; e - qq >= 4; qq += 4)
if (qq[iorder[2]] != 0 || qq[iorder[3]] != 0) if (qq[iorder[2]] != 0 || qq[iorder[3]] != 0)
pairs++; pairs++;
#endif #endif