summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2011-10-04 11:50:21 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2011-10-04 11:50:21 (GMT)
commited8ba14441d5a9c97c0cb8ba9e262595cf94dd1a (patch)
tree33554088a47269264ebb1b57146152e7ed10c29b
parent1665d2c75fcfe5097983c13fdf66fd5e766890c2 (diff)
downloadcpython-ed8ba14441d5a9c97c0cb8ba9e262595cf94dd1a.zip
cpython-ed8ba14441d5a9c97c0cb8ba9e262595cf94dd1a.tar.gz
cpython-ed8ba14441d5a9c97c0cb8ba9e262595cf94dd1a.tar.bz2
Remove all other uses of the C tolower()/toupper() which could break with a Turkish locale.
-rw-r--r--Modules/_tkinter.c4
-rw-r--r--Modules/binascii.c4
-rw-r--r--Modules/unicodedata.c4
3 files changed, 6 insertions, 6 deletions
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index cb2795f..672837f 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -661,8 +661,8 @@ Tkapp_New(char *screenName, char *className,
}
strcpy(argv0, className);
- if (isupper(Py_CHARMASK(argv0[0])))
- argv0[0] = tolower(Py_CHARMASK(argv0[0]));
+ if (Py_ISUPPER(Py_CHARMASK(argv0[0])))
+ argv0[0] = Py_TOLOWER(Py_CHARMASK(argv0[0]));
Tcl_SetVar(v->interp, "argv0", argv0, TCL_GLOBAL_ONLY);
ckfree(argv0);
diff --git a/Modules/binascii.c b/Modules/binascii.c
index 01e8860..19681b4 100644
--- a/Modules/binascii.c
+++ b/Modules/binascii.c
@@ -1102,8 +1102,8 @@ to_int(int c)
if (isdigit(c))
return c - '0';
else {
- if (isupper(c))
- c = tolower(c);
+ if (Py_ISUPPER(c))
+ c = Py_TOLOWER(c);
if (c >= 'a' && c <= 'f')
return c - 'a' + 10;
}
diff --git a/Modules/unicodedata.c b/Modules/unicodedata.c
index 463be2c..887056c 100644
--- a/Modules/unicodedata.c
+++ b/Modules/unicodedata.c
@@ -830,7 +830,7 @@ _gethash(const char *s, int len, int scale)
unsigned long h = 0;
unsigned long ix;
for (i = 0; i < len; i++) {
- h = (h * scale) + (unsigned char) toupper(Py_CHARMASK(s[i]));
+ h = (h * scale) + (unsigned char) Py_TOUPPER(Py_CHARMASK(s[i]));
ix = h & 0xff000000;
if (ix)
h = (h ^ ((ix>>24) & 0xff)) & 0x00ffffff;
@@ -980,7 +980,7 @@ _cmpname(PyObject *self, int code, const char* name, int namelen)
if (!_getucname(self, code, buffer, sizeof(buffer)))
return 0;
for (i = 0; i < namelen; i++) {
- if (toupper(Py_CHARMASK(name[i])) != buffer[i])
+ if (Py_TOUPPER(Py_CHARMASK(name[i])) != buffer[i])
return 0;
}
return buffer[namelen] == '\0';