prevent passing NULL to memcpy (closes #22605)

Patch by Jakub Wilk.
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c
index 4a1c158..24f0ea0 100644
--- a/Modules/arraymodule.c
+++ b/Modules/arraymodule.c
@@ -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);