##// END OF EJS Templates
encoding: improve handling of buggy getpreferredencoding() on Mac OS X...
encoding: improve handling of buggy getpreferredencoding() on Mac OS X Prior to version 2.7, calling locale.getpreferredencoding() would always return 'mac-roman' on Mac OS X. Previously, this was handled by a call to locale.setlocale(). Unfortunately, Python 2.6.5 and older have a bug where isspace() would incorrectly report True for 0x85 and 0xa0 after such a call. In order to fix this, we replace the previous _encodingfixup mapping to an _encodingfixers mapping. Rather than mapping encodings to their replacement, it maps them to a function returning the replacement. This allows us to provide an simplified implementation of getpreferredencoding() which extracts the expected encoding and restores the locale. This fix is based on a patch originally submitted by Martijn Pieters as well as feedback from Brodie Rao.
Dan Villiom Podlaski Christiansen -
r11892:2be70ca1 stable
Show More
Name Size Modified Last Commit Author
/ mercurial / help
config.txt Loading ...
dates.txt Loading ...
diffs.txt Loading ...
environment.txt Loading ...
extensions.txt Loading ...
glossary.txt Loading ...
hgweb.txt Loading ...
multirevs.txt Loading ...
patterns.txt Loading ...
revisions.txt Loading ...
revsets.txt Loading ...
templates.txt Loading ...
urls.txt Loading ...