[Python-3000] Pleaswe help with the countdown to zero failing tests in the struni branch!
Guido van Rossum
guido at python.org
Tue Aug 7 16:36:20 CEST 2007
On 8/7/07, Thomas Heller <theller at ctypes.org> wrote:
> Guido van Rossum schrieb:
> > test_ctypes
> > Recently one test started failing again, after Martin changed
> > PyUnicode_FromStringAndSize() to use UTF8 instead of Latin1.
>
> I wanted to look into this and noticed that 'import time' on Windows
> doesn't work anymore on my machine. The reason is that PyUnicode_FromStringAndSize()
> is called for the string 'Westeuropäische Normalzeit', and then fails with
>
> UnicodeDecodeError: 'utf8' codec can't decode bytes in position 9-11: invalid data
I'm assuming that's a literal somewhere? In what encoding is it? That
function was recently changed to require the input to be UTF-8. If the
input isn't UTF-8, you'll have to use another API with an explicit
encoding, PyUnicode_Decode().
I'm pretty sure this change is also responsible for the one failure
(as it started around the time that change was made) but I don't
understand the failure well enough to track it down. (It looked like
uninitialized memory was being accessed though.)
In case you wonder why it was changed, it's for symmetry with
_PyUnicode_AsDefaultEncodedString(), which is the most common way to
turn Unicode back into a char* without specifying an encoding. (And
yes, that name needs to be changed.)
See recent posts here.
--
--Guido van Rossum (home page: http://www.python.org/~guido/)
More information about the Python-3000
mailing list