Le 04/10/2011 18:45, "Martin v. Löwis" a écrit :
Migrate str.expandtabs to the new API
This needs
if (PyUnicode_READY(self) == -1)
return NULL;
right after the ParseTuple call. In most cases, the
check will be a noop. But if it's not, omitting it will
make expandtabs have no effect, since the string length
will be 0 (in a debug build, you also get an assertion
failure).
This "make input string ready" code path is not well tested because all
functions creating strings in unicodeobject.c ensure that the string is
ready.
I disabled the call to PyUnicode_READY() on result in debug mode in
unicodeobject.c (define DONT_MAKE_RESULT_READY). It helped me to fix
bugs in various functions, see my commit b66033a0f140.
Victor
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com