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 | arnimar |
|---|---|
| Recipients | arnimar |
| Date | 2008年01月12日.15:00:02 |
| SpamBayes Score | 0.26534906 |
| Marked as misclassified | No |
| Message-id | <1200150013.57.0.828744211276.issue1813@psf.upfronthosting.co.za> |
| In-reply-to |
| Content | |
|---|---|
When switching to a turkish locale, the codecs registry fails on a codec
lookup which worked before the locale change.
This happens when the codec name contains an uppercase 'I'. What
happens, is just before doing a cache lookup, the string is normalized,
which includes a call to <ctype.h>'s tolower. tolower is locale
dependant, and the turkish locale handles 'I's different from other
locales. Thus, the lookup fails, since the normalization behaves
differently then it did before.
Replacing the tolower() call with this made the lookup work:
int my_tolower(char c)
{
if ('A' <= c && c <= 'Z')
c += 32;
return c;
}
PS: If the turkish locale is not supported, this here will enable it to
an Ubuntu system
a) sudo cp /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/local
(or just copy the lines with "tr" in them)
b) sudo dpkg-reconfigure locales |
|
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2008年01月12日 15:00:13 | arnimar | set | spambayes_score: 0.265349 -> 0.26534906 recipients: + arnimar |
| 2008年01月12日 15:00:13 | arnimar | set | spambayes_score: 0.265349 -> 0.265349 messageid: <1200150013.57.0.828744211276.issue1813@psf.upfronthosting.co.za> |
| 2008年01月12日 15:00:02 | arnimar | link | issue1813 messages |
| 2008年01月12日 15:00:02 | arnimar | create | |