summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
Diffstat (limited to 'Modules')
-rw-r--r--Modules/stropmodule.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index 73a35c9..34ac71a 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -696,22 +696,17 @@ strop_atoi(self, args)
while (*s && isspace(Py_CHARMASK(*s)))
s++;
- if (s[0] == '\0') {
- PyErr_SetString(PyExc_ValueError, "empty string for atoi()");
- return NULL;
- }
errno = 0;
if (base == 0 && s[0] == '0')
x = (long) PyOS_strtoul(s, &end, base);
else
x = PyOS_strtol(s, &end, base);
- if (end == s || !isxdigit(end[-1])) {
- PyErr_SetString(PyExc_ValueError, "no digits in int constant");
- return NULL;
- }
+ if (end == s || !isxdigit(end[-1]))
+ goto bad;
while (*end && isspace(Py_CHARMASK(*end)))
end++;
if (*end != '\0') {
+ bad:
sprintf(buffer, "invalid literal for atoi(): %.200s", s);
PyErr_SetString(PyExc_ValueError, buffer);
return NULL;