diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2017-04-19 17:03:52 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-19 17:03:52 (GMT) |
commit | bf623ae8843dc30b28c574bec8d29fc14be59d86 (patch) | |
tree | 0a7ab5b441e0306767bfbc6da4522e4af34ab9e6 /Objects/namespaceobject.c | |
parent | c209b70d610da50a844a3c10f37d6183bade3446 (diff) | |
download | cpython-bf623ae8843dc30b28c574bec8d29fc14be59d86.zip cpython-bf623ae8843dc30b28c574bec8d29fc14be59d86.tar.gz cpython-bf623ae8843dc30b28c574bec8d29fc14be59d86.tar.bz2 |
bpo-30061: Check if PyObject_Size()/PySequence_Size()/PyMapping_Size() (#1096)
raised an error.
Replace them with using concrete types API that never fails if appropriate.
Diffstat (limited to 'Objects/namespaceobject.c')
-rw-r--r-- | Objects/namespaceobject.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/Objects/namespaceobject.c b/Objects/namespaceobject.c index 0bb3063..6deca96 100644 --- a/Objects/namespaceobject.c +++ b/Objects/namespaceobject.c @@ -40,15 +40,9 @@ namespace_new(PyTypeObject *type, PyObject *args, PyObject *kwds) static int namespace_init(_PyNamespaceObject *ns, PyObject *args, PyObject *kwds) { - // ignore args if it's NULL or empty - if (args != NULL) { - Py_ssize_t argcount = PyObject_Size(args); - if (argcount < 0) - return -1; - else if (argcount > 0) { - PyErr_Format(PyExc_TypeError, "no positional arguments expected"); - return -1; - } + if (PyTuple_GET_SIZE(args) != 0) { + PyErr_Format(PyExc_TypeError, "no positional arguments expected"); + return -1; } if (kwds == NULL) return 0; |