Issue #17173: Remove uses of locale-dependent C functions (isalpha() etc.) in the interpreter.

I've left a couple of them in: zlib (third-party lib), getaddrinfo.c
(doesn't include Python.h, and probably obsolete), _sre.c (legitimate
use for the re.LOCALE flag).
This commit is contained in:
Antoine Pitrou 2013-02-09 23:11:27 +01:00
parent b6ed17344b
commit 4de7457009
11 changed files with 19 additions and 17 deletions

View file

@ -1184,7 +1184,7 @@ prepare_s(PyStructObject *self)
size = 0;
len = 0;
while ((c = *s++) != '\0') {
if (isspace(Py_CHARMASK(c)))
if (Py_ISSPACE(Py_CHARMASK(c)))
continue;
if ('0' <= c && c <= '9') {
num = c - '0';
@ -1249,7 +1249,7 @@ prepare_s(PyStructObject *self)
s = fmt;
size = 0;
while ((c = *s++) != '\0') {
if (isspace(Py_CHARMASK(c)))
if (Py_ISSPACE(Py_CHARMASK(c)))
continue;
if ('0' <= c && c <= '9') {
num = c - '0';

View file

@ -1099,7 +1099,7 @@ This function is also available as \"hexlify()\".");
static int
to_int(int c)
{
if (isdigit(c))
if (Py_ISDIGIT(c))
return c - '0';
else {
if (Py_ISUPPER(c))

View file

@ -695,7 +695,7 @@ os2_formatmsg(char *msgbuf, int msglen, char *reason)
if (strlen(msgbuf) > 0) { /* If Non-Empty Msg, Trim CRLF */
char *lastc = &msgbuf[ strlen(msgbuf)-1 ];
while (lastc > msgbuf && isspace(Py_CHARMASK(*lastc)))
while (lastc > msgbuf && Py_ISSPACE(Py_CHARMASK(*lastc)))
*lastc-- = '\0'; /* Trim Trailing Whitespace (CRLF) */
}

View file

@ -519,7 +519,7 @@ set_error(void)
/* If non-empty msg, trim CRLF */
char *lastc = &outbuf[ strlen(outbuf)-1 ];
while (lastc > outbuf &&
isspace(Py_CHARMASK(*lastc))) {
Py_ISSPACE(Py_CHARMASK(*lastc))) {
/* Trim trailing whitespace (CRLF) */
*lastc-- = '\0';
}