diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c index 4a1c158514d..24f0ea0f9f8 100644 --- a/Modules/arraymodule.c +++ b/Modules/arraymodule.c @@ -2628,7 +2628,7 @@ array_new(PyTypeObject *type, PyObject *args, PyObject *kwds) self->allocated = Py_SIZE(self); } } - else if (initial != NULL && array_Check(initial)) { + else if (initial != NULL && array_Check(initial) && len > 0) { arrayobject *self = (arrayobject *)a; arrayobject *other = (arrayobject *)initial; memcpy(self->ob_item, other->ob_item, len * other->ob_descr->itemsize);