Issue #16847: Fixed improper use of _PyUnicode_CheckConsistency() in

non-pydebug builds. Several extension modules now compile cleanly when
assert()s are enabled in standard builds (-DDEBUG flag).
This commit is contained in:
Christian Heimes 2013-01-03 09:22:41 +01:00
commit 75e923fcf2
7 changed files with 16 additions and 0 deletions

View File

@ -4501,6 +4501,10 @@ Tools/Demos
Extension Modules Extension Modules
----------------- -----------------
- Issue #16847: Fixed improper use of _PyUnicode_CheckConsistency() in
non-pydebug builds. Several extension modules now compile cleanly when
assert()s are enabled in standard builds (-DDEBUG flag).
- Issue #13840: The error message produced by ctypes.create_string_buffer - Issue #13840: The error message produced by ctypes.create_string_buffer
when given a Unicode string has been fixed. when given a Unicode string has been fixed.

View File

@ -210,7 +210,9 @@ ascii_escape_unicode(PyObject *pystr)
} }
} }
output[chars++] = '"'; output[chars++] = '"';
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(rval, 1)); assert(_PyUnicode_CheckConsistency(rval, 1));
#endif
return rval; return rval;
} }

View File

@ -300,7 +300,9 @@ SHA3_hexdigest(SHA3object *self, PyObject *unused)
c = (digest[i] & 0xf); c = (digest[i] & 0xf);
hex_digest[j++] = Py_hexdigits[c]; hex_digest[j++] = Py_hexdigits[c];
} }
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(retval, 1)); assert(_PyUnicode_CheckConsistency(retval, 1));
#endif
return retval; return retval;
} }

View File

@ -399,7 +399,9 @@ MD5_hexdigest(MD5object *self, PyObject *unused)
c = (digest[i] & 0xf); c = (digest[i] & 0xf);
hex_digest[j++] = Py_hexdigits[c]; hex_digest[j++] = Py_hexdigits[c];
} }
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(retval, 1)); assert(_PyUnicode_CheckConsistency(retval, 1));
#endif
return retval; return retval;
} }

View File

@ -376,7 +376,9 @@ SHA1_hexdigest(SHA1object *self, PyObject *unused)
c = (digest[i] & 0xf); c = (digest[i] & 0xf);
hex_digest[j++] = Py_hexdigits[c]; hex_digest[j++] = Py_hexdigits[c];
} }
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(retval, 1)); assert(_PyUnicode_CheckConsistency(retval, 1));
#endif
return retval; return retval;
} }

View File

@ -456,7 +456,9 @@ SHA256_hexdigest(SHAobject *self, PyObject *unused)
c = (digest[i] & 0xf); c = (digest[i] & 0xf);
hex_digest[j++] = Py_hexdigits[c]; hex_digest[j++] = Py_hexdigits[c];
} }
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(retval, 1)); assert(_PyUnicode_CheckConsistency(retval, 1));
#endif
return retval; return retval;
} }

View File

@ -522,7 +522,9 @@ SHA512_hexdigest(SHAobject *self, PyObject *unused)
c = (digest[i] & 0xf); c = (digest[i] & 0xf);
hex_digest[j++] = Py_hexdigits[c]; hex_digest[j++] = Py_hexdigits[c];
} }
#ifdef Py_DEBUG
assert(_PyUnicode_CheckConsistency(retval, 1)); assert(_PyUnicode_CheckConsistency(retval, 1));
#endif
return retval; return retval;
} }