From 1912b39deffe416f6b0c16df64b634a3e55fd424 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 26 Mar 2015 09:37:23 +0100 Subject: _PyUnicodeWriter_WriteStr() now checks that the input string is consistent in debug mode to detect bugs earlier. _PyUnicodeWriter_Finish() doesn't check if the read only string is consistent, whereas it does check consistency for strings built by itself. --- Objects/unicodeobject.c | 1 + 1 file changed, 1 insertion(+) diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 5343b21..e494e4a 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -13422,6 +13422,7 @@ _PyUnicodeWriter_WriteStr(_PyUnicodeWriter *writer, PyObject *str) maxchar = PyUnicode_MAX_CHAR_VALUE(str); if (maxchar > writer->maxchar || len > writer->size - writer->pos) { if (writer->buffer == NULL && !writer->overallocate) { + assert(_PyUnicode_CheckConsistency(str, 1)); writer->readonly = 1; Py_INCREF(str); writer->buffer = str; -- cgit v0.12