diff -r 470ea66f5bee Modules/arraymodule.c --- a/Modules/arraymodule.c Fri Oct 10 14:35:51 2014 +0300 +++ b/Modules/arraymodule.c Fri Oct 10 21:19:00 2014 +0200 @@ -2628,7 +2628,7 @@ 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);