summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Objects/abstract.c2
-rw-r--r--Objects/listobject.c12
2 files changed, 5 insertions, 9 deletions
diff --git a/Objects/abstract.c b/Objects/abstract.c
index 7e246dba89..1259ad48a2 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -1380,7 +1380,7 @@ PySequence_Tuple(PyObject *v)
return NULL;
/* Guess result size and allocate space. */
- n = PySequence_Size(v);
+ n = PyObject_Size(v);
if (n < 0) {
PyErr_Clear();
n = 10; /* arbitrary */
diff --git a/Objects/listobject.c b/Objects/listobject.c
index 47673be977..3397fbbf93 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -2266,15 +2266,11 @@ list_fill(PyListObject *result, PyObject *v)
return -1;
/* Guess a result list size. */
- n = -1; /* unknown */
- if (PySequence_Check(v) &&
- v->ob_type->tp_as_sequence->sq_length) {
- n = PySequence_Size(v);
- if (n < 0)
- PyErr_Clear();
- }
- if (n < 0)
+ n = PyObject_Size(v);
+ if (n < 0) {
+ PyErr_Clear();
n = 8; /* arbitrary */
+ }
NRESIZE(result->ob_item, PyObject*, n);
if (result->ob_item == NULL) {
PyErr_NoMemory();