Issue #18408: random_seed() now raises a MemoryError on memory allocation
failure
diff --git a/Modules/_randommodule.c b/Modules/_randommodule.c
index a729817..59c15b3 100644
--- a/Modules/_randommodule.c
+++ b/Modules/_randommodule.c
@@ -250,8 +250,10 @@
 
     /* Convert seed to byte sequence. */
     key_as_bytes = (unsigned char *)PyMem_Malloc((size_t)4 * keyused);
-    if (key_as_bytes == NULL)
+    if (key_as_bytes == NULL) {
+        PyErr_NoMemory();
         goto Done;
+    }
     res = _PyLong_AsByteArray((PyLongObject *)n,
                               key_as_bytes, keyused * 4,
                               1,  /* little-endian */
@@ -264,6 +266,7 @@
     /* Fill array of unsigned longs from byte sequence. */
     key = (unsigned long *)PyMem_Malloc(sizeof(unsigned long) * keyused);
     if (key == NULL) {
+        PyErr_NoMemory();
         PyMem_Free(key_as_bytes);
         goto Done;
     }