Merged revisions 72253 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72253 | mark.dickinson | 2009-05-03 21:59:48 +0100 (Sun, 03 May 2009) | 2 lines

  Eliminate some locale-dependent calls to isspace and tolower.
........
diff --git a/Objects/floatobject.c b/Objects/floatobject.c
index 0619877..1071fae 100644
--- a/Objects/floatobject.c
+++ b/Objects/floatobject.c
@@ -188,7 +188,7 @@
 	}
 	last = s + len;
 
-	while (*s && isspace(Py_CHARMASK(*s)))
+	while (Py_ISSPACE(*s))
 		s++;
 	/* We don't care about overflow or underflow.  If the platform
 	 * supports them, infinities and signed zeroes (on underflow) are
@@ -196,7 +196,7 @@
 	x = PyOS_string_to_double(s, (char **)&end, NULL);
 	if (x == -1.0 && PyErr_Occurred())
 		goto error;
-	while (*end && isspace(Py_CHARMASK(*end)))
+	while (Py_ISSPACE(*end))
 		end++;
 	if (end == last)
 		result = PyFloat_FromDouble(x);
@@ -1223,7 +1223,7 @@
 	 ********************/
 
 	/* leading whitespace and optional sign */
-	while (isspace(Py_CHARMASK(*s)))
+	while (Py_ISSPACE(*s))
 		s++;
 	if (*s == '-') {
 		s++;
@@ -1247,7 +1247,7 @@
 	s_store = s;
 	if (*s == '0') {
 		s++;
-		if (tolower(*s) == (int)'x')
+		if (*s == 'x' || *s == 'X')
 			s++;
 		else
 			s = s_store;
@@ -1277,7 +1277,7 @@
 		goto insane_length_error;
 
 	/* [p <exponent>] */
-	if (tolower(*s) == (int)'p') {
+	if (*s == 'p' || *s == 'P') {
 		s++;
 		exp_start = s;
 		if (*s == '-' || *s == '+')
@@ -1293,7 +1293,7 @@
 		exp = 0;
 
 	/* optional trailing whitespace leading to the end of the string */
-	while (isspace(Py_CHARMASK(*s)))
+	while (Py_ISSPACE(*s))
 		s++;
 	if (s != s_end)
 		goto parse_error;