This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author jteh
Recipients brian.curtin, georg.brandl, jteh, lygstate, mcjeff, ncoghlan, pitrou, tim.golden
Date 2012-10-19.02:27:57
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1350613677.62.0.25917448424.issue14255@psf.upfronthosting.co.za>
In-reply-to
Content
This issue is much nastier than it seems when dealing with character sets that contain multi-byte characters in Python 2.7 on Windows. For example, on a Japanese system:
1. The ANSI code page is cp932 and Python 2.7 will return the TEMP environment variable as a str with this encoding.
2. If a user has a username containing the character \u5c71, this will be encoded as \x8eR, so the TEMP environment variable will include this character.
3. When normcase is called, \x8eR is converted to \x8er.
4. Because \x8eR is a multi-byte character, \x8er is an unrelated character; case insensitivity for "R" doesn't apply.
5. The result is that the correct temp directory is skipped. In fact, on most systems, IOError is raised because none of the other candidate directories are valid either.
History
Date User Action Args
2012-10-19 02:27:57jtehsetrecipients: + jteh, georg.brandl, ncoghlan, pitrou, tim.golden, brian.curtin, mcjeff, lygstate
2012-10-19 02:27:57jtehsetmessageid: <1350613677.62.0.25917448424.issue14255@psf.upfronthosting.co.za>
2012-10-19 02:27:57jtehlinkissue14255 messages
2012-10-19 02:27:57jtehcreate