mirror of https://github.com/python/cpython
In atoi(), don't use isxdigit() to test whether the last character
converted was a "digit" -- use isalnum(). This test is there only to guard against "+" or "-" being interpreted as a valid int literal. Reported by Takahiro Nakayama.
This commit is contained in:
parent
0fb7a37667
commit
5bd69db9f0
|
@ -818,7 +818,7 @@ strop_atoi(self, args)
|
||||||
x = (long) PyOS_strtoul(s, &end, base);
|
x = (long) PyOS_strtoul(s, &end, base);
|
||||||
else
|
else
|
||||||
x = PyOS_strtol(s, &end, base);
|
x = PyOS_strtol(s, &end, base);
|
||||||
if (end == s || !isxdigit(end[-1]))
|
if (end == s || !isalnum(end[-1]))
|
||||||
goto bad;
|
goto bad;
|
||||||
while (*end && isspace(Py_CHARMASK(*end)))
|
while (*end && isspace(Py_CHARMASK(*end)))
|
||||||
end++;
|
end++;
|
||||||
|
|
Loading…
Reference in New Issue