[Python-Dev] Vacation and possibly a new bug
Martin v. L÷wis
16 Jul 2003 06:32:49 +0200
Skip Montanaro <email@example.com> writes:
> I suspect details.filename needs to be set to a unicode object, but I don't
> know where or how.
I see. You should revert Just's checkin of setting
supports_unicode_filenames in posixpath.py. OSX doesn't.
On Windows, posixmodule.c uses posix_error_with_unicode_filename,
which recreates a Unicode object, whereas on Unix (including OSX)
posix_error_with_filename is used, which puts the converted byte
string into the exception.
This is clearly brain-dead: AFAICT, in all cases, we are putting a
basestring object into the exception essentially denoting a file name
which we already have a Python object for. So this entire error
handling should be changed to a new
posix_error_with_basestring_filename, which would pass the original
Python object that the user was providing, instead of creating
new strings for the exception.
However, this would be a significant rewrite of the entire error
handling, which we can't do before 2.3.