STINNER Victor added the comment:
I'm interested by your struct.name string: can you also dump it? Where
does it come from? Does it use ctypes?
* print(ascii(struct.name))
* print(ascii(struct.name.encode("unicode_internal")))
* print(ascii(struct.name.encode("utf-8")))
I'm interested by all variables used to build the final path.
nt._isdir() doesn't check if the path contains a NUL character. It
should: see aksi #13617
> b'D\x00:\x00\\\x00B\x00u\x00g\x00
> \x00r\x00e\x00p\x00o\x00r\x00t\x00s\x00\\\x00P\x00y\x00t\x00h\x00o\x00n\x00\\\x00A\x00u\x00t\x00o\x00L\x00E\x00E\x00D\x00\\\x00d\x00e\x00f\x00a\x00u\x00l\x00t\x00\\\x00s\x00u\x00b\x00-\x00f\x00c\x00c\x00\x00\x002\x00\x03\x00\x00\x00\x00\x00'
Decoded from UTF-16-LE, it gives:
'D:\\Bug reports\\Python\\AutoLEED\\default\\sub-fcc\x002\x03\x00\x00'
> b'D:\\Bug reports\\Python\\AutoLEED\\default\\sub-fcc\\bulk'
Decode from UTF-8, it gives:
'D:\\Bug reports\\Python\\AutoLEED\\default\\sub-fcc\\bulk'
It looks like the wstr representation of the string is corrupted.
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue17137>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com