diff Objects/floatobject.c @ 53714:e2b553d7205f

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. ........
author Mark Dickinson <dickinsm@gmail.com>
date Sun, 03 May 2009 21:07:13 +0000
parents 13a82a710f19
children c6376d3fa968
line wrap: on
line diff
--- a/Objects/floatobject.c	Sun May 03 20:40:46 2009 +0000
+++ b/Objects/floatobject.c	Sun May 03 21:07:13 2009 +0000
@@ -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;