diff options
Diffstat (limited to 'Objects')
| -rw-r--r-- | Objects/intobject.c | 8 | ||||
| -rw-r--r-- | Objects/longobject.c | 8 |
2 files changed, 14 insertions, 2 deletions
diff --git a/Objects/intobject.c b/Objects/intobject.c index 74955ad..1ae8006 100644 --- a/Objects/intobject.c +++ b/Objects/intobject.c @@ -1059,8 +1059,14 @@ int_new(PyTypeObject *type, PyObject *args, PyObject *kwds) if (!PyArg_ParseTupleAndKeywords(args, kwds, "|Oi:int", kwlist, &x, &base)) return NULL; - if (x == NULL) + if (x == NULL) { + if (base != -909) { + PyErr_SetString(PyExc_TypeError, + "int() missing string argument"); + return NULL; + } return PyInt_FromLong(0L); + } if (base == -909) return PyNumber_Int(x); if (PyString_Check(x)) { diff --git a/Objects/longobject.c b/Objects/longobject.c index 9296ad4..5a6338f 100644 --- a/Objects/longobject.c +++ b/Objects/longobject.c @@ -3987,8 +3987,14 @@ long_new(PyTypeObject *type, PyObject *args, PyObject *kwds) if (!PyArg_ParseTupleAndKeywords(args, kwds, "|Oi:long", kwlist, &x, &base)) return NULL; - if (x == NULL) + if (x == NULL) { + if (base != -909) { + PyErr_SetString(PyExc_TypeError, + "long() missing string argument"); + return NULL; + } return PyLong_FromLong(0L); + } if (base == -909) return PyNumber_Long(x); else if (PyString_Check(x)) { |
