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.
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index 234a4dd..4b8a501 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -818,7 +818,7 @@
x = (long) PyOS_strtoul(s, &end, base);
else
x = PyOS_strtol(s, &end, base);
- if (end == s || !isxdigit(end[-1]))
+ if (end == s || !isalnum(end[-1]))
goto bad;
while (*end && isspace(Py_CHARMASK(*end)))
end++;