summaryrefslogtreecommitdiff
path: root/Modules
diff options
context:
space:
mode:
authorAndrew M. Kuchling <amk@amk.ca>2006-09-27 19:17:32 +0000
committerAndrew M. Kuchling <amk@amk.ca>2006-09-27 19:17:32 +0000
commite7031223e36c43ccd47321b3ff8997c1423e2b9c (patch)
treea8822cdeb18e24a91bd5e3e129db1cfa95d05b78 /Modules
parent4c16bac18c82868e3f20a2c4ca8f329605942ff8 (diff)
downloadcpython-git-e7031223e36c43ccd47321b3ff8997c1423e2b9c.tar.gz
[Backport of rev. 42093 by neal.norwitz]
Check return result from Py_InitModule*(). This API can fail. Probably should be backported.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/_bsddb.c2
-rw-r--r--Modules/_curses_panel.c2
-rw-r--r--Modules/_cursesmodule.c2
-rw-r--r--Modules/_heapqmodule.c2
-rw-r--r--Modules/_localemodule.c2
-rw-r--r--Modules/_randommodule.c2
-rw-r--r--Modules/_sre.c2
-rw-r--r--Modules/_ssl.c2
-rw-r--r--Modules/_testcapimodule.c2
-rw-r--r--Modules/_tkinter.c2
-rw-r--r--Modules/almodule.c2
-rw-r--r--Modules/arraymodule.c2
-rw-r--r--Modules/audioop.c2
-rw-r--r--Modules/binascii.c2
-rw-r--r--Modules/bsddbmodule.c2
-rw-r--r--Modules/bz2module.c2
-rw-r--r--Modules/cPickle.c2
-rw-r--r--Modules/cStringIO.c1
-rw-r--r--Modules/cdmodule.c2
-rw-r--r--Modules/clmodule.c2
-rw-r--r--Modules/cmathmodule.c2
-rw-r--r--Modules/collectionsmodule.c2
-rw-r--r--Modules/datetimemodule.c2
-rw-r--r--Modules/dbmmodule.c2
-rw-r--r--Modules/dlmodule.c2
-rw-r--r--Modules/errnomodule.c2
-rw-r--r--Modules/fcntlmodule.c2
-rw-r--r--Modules/flmodule.c2
-rw-r--r--Modules/fmmodule.c2
-rw-r--r--Modules/fpectlmodule.c2
-rw-r--r--Modules/fpetestmodule.c2
-rw-r--r--Modules/gcmodule.c2
-rw-r--r--Modules/gdbmmodule.c2
-rw-r--r--Modules/grpmodule.c2
-rw-r--r--Modules/imageop.c2
-rw-r--r--Modules/imgfile.c2
-rw-r--r--Modules/itertoolsmodule.c2
-rw-r--r--Modules/linuxaudiodev.c2
-rw-r--r--Modules/mathmodule.c2
-rw-r--r--Modules/md5module.c2
-rw-r--r--Modules/mmapmodule.c2
-rw-r--r--Modules/nismodule.c2
-rw-r--r--Modules/operator.c2
-rw-r--r--Modules/ossaudiodev.c2
-rw-r--r--Modules/parsermodule.c2
-rw-r--r--Modules/posixmodule.c2
-rw-r--r--Modules/puremodule.c2
-rw-r--r--Modules/pwdmodule.c2
-rw-r--r--Modules/pyexpat.c2
-rw-r--r--Modules/readline.c2
-rw-r--r--Modules/regexmodule.c2
-rw-r--r--Modules/resource.c2
-rw-r--r--Modules/rgbimgmodule.c2
-rw-r--r--Modules/selectmodule.c2
-rw-r--r--Modules/shamodule.c2
-rw-r--r--Modules/signalmodule.c2
-rw-r--r--Modules/socketmodule.c2
-rw-r--r--Modules/stropmodule.c2
-rw-r--r--Modules/structmodule.c2
-rw-r--r--Modules/sunaudiodev.c2
-rw-r--r--Modules/svmodule.c2
-rw-r--r--Modules/symtablemodule.c2
-rw-r--r--Modules/syslogmodule.c2
-rw-r--r--Modules/termios.c2
-rw-r--r--Modules/threadmodule.c2
-rw-r--r--Modules/timemodule.c2
-rw-r--r--Modules/xxmodule.c2
67 files changed, 133 insertions, 0 deletions
diff --git a/Modules/_bsddb.c b/Modules/_bsddb.c
index e07d44376d..586d580471 100644
--- a/Modules/_bsddb.c
+++ b/Modules/_bsddb.c
@@ -4846,6 +4846,8 @@ DL_EXPORT(void) init_bsddb(void)
/* Create the module and add the functions */
m = Py_InitModule(_bsddbModuleName, bsddb_methods);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/_curses_panel.c b/Modules/_curses_panel.c
index 01243b837c..0acf3fdee8 100644
--- a/Modules/_curses_panel.c
+++ b/Modules/_curses_panel.c
@@ -464,6 +464,8 @@ init_curses_panel(void)
/* Create the module and add the functions */
m = Py_InitModule("_curses_panel", PyCurses_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
/* For exception _curses_panel.error */
diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index a5617b58f5..a3bff5fe03 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -2488,6 +2488,8 @@ init_curses(void)
/* Create the module and add the functions */
m = Py_InitModule("_curses", PyCurses_methods);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/_heapqmodule.c b/Modules/_heapqmodule.c
index 5a78c453e1..999647e11a 100644
--- a/Modules/_heapqmodule.c
+++ b/Modules/_heapqmodule.c
@@ -610,6 +610,8 @@ init_heapq(void)
PyObject *m;
m = Py_InitModule3("_heapq", heapq_methods, module_doc);
+ if (m == NULL)
+ return;
PyModule_AddObject(m, "__about__", PyString_FromString(__about__));
}
diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c
index de470e0299..af6a615a09 100644
--- a/Modules/_localemodule.c
+++ b/Modules/_localemodule.c
@@ -715,6 +715,8 @@ init_locale(void)
#endif
m = Py_InitModule("_locale", PyLocale_Methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
diff --git a/Modules/_randommodule.c b/Modules/_randommodule.c
index 8fe2b2bc99..bd1c9d39b1 100644
--- a/Modules/_randommodule.c
+++ b/Modules/_randommodule.c
@@ -573,6 +573,8 @@ init_random(void)
if (PyType_Ready(&Random_Type) < 0)
return;
m = Py_InitModule3("_random", NULL, module_doc);
+ if (m == NULL)
+ return;
Py_INCREF(&Random_Type);
PyModule_AddObject(m, "Random", (PyObject *)&Random_Type);
}
diff --git a/Modules/_sre.c b/Modules/_sre.c
index 327f54a7e9..6da6de5482 100644
--- a/Modules/_sre.c
+++ b/Modules/_sre.c
@@ -3389,6 +3389,8 @@ PyMODINIT_FUNC init_sre(void)
Scanner_Type.ob_type = &PyType_Type;
m = Py_InitModule("_" SRE_MODULE, _functions);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
x = PyInt_FromLong(SRE_MAGIC);
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index df36fe2de3..f2b9cdef48 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -657,6 +657,8 @@ init_ssl(void)
PySSL_Type.ob_type = &PyType_Type;
m = Py_InitModule3("_ssl", PySSL_methods, module_doc);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
/* Load _socket module and its C API */
diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c
index 287099b2d9..c11c6822e9 100644
--- a/Modules/_testcapimodule.c
+++ b/Modules/_testcapimodule.c
@@ -856,6 +856,8 @@ init_testcapi(void)
Copyable_Type.ob_type = &PyType_Type;
m = Py_InitModule("_testcapi", TestMethods);
+ if (m == NULL)
+ return;
PyModule_AddObject(m, "UCHAR_MAX", PyInt_FromLong(UCHAR_MAX));
PyModule_AddObject(m, "USHRT_MAX", PyInt_FromLong(USHRT_MAX));
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index 7941a1174b..ab566125be 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -3093,6 +3093,8 @@ init_tkinter(void)
#endif
m = Py_InitModule("_tkinter", moduleMethods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
Tkinter_TclError = PyErr_NewException("_tkinter.TclError", NULL, NULL);
diff --git a/Modules/almodule.c b/Modules/almodule.c
index e457f86baf..fbeb13a630 100644
--- a/Modules/almodule.c
+++ b/Modules/almodule.c
@@ -1998,6 +1998,8 @@ inital(void)
m = Py_InitModule4("al", al_methods,
al_module_documentation,
(PyObject*)NULL,PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/arraymodule.c b/Modules/arraymodule.c
index 469c5cbcf2..593fc48995 100644
--- a/Modules/arraymodule.c
+++ b/Modules/arraymodule.c
@@ -2096,6 +2096,8 @@ initarray(void)
Arraytype.ob_type = &PyType_Type;
PyArrayIter_Type.ob_type = &PyType_Type;
m = Py_InitModule3("array", a_methods, module_doc);
+ if (m == NULL)
+ return;
Py_INCREF((PyObject *)&Arraytype);
PyModule_AddObject(m, "ArrayType", (PyObject *)&Arraytype);
diff --git a/Modules/audioop.c b/Modules/audioop.c
index 023d22b238..72b58ee149 100644
--- a/Modules/audioop.c
+++ b/Modules/audioop.c
@@ -1376,6 +1376,8 @@ initaudioop(void)
{
PyObject *m, *d;
m = Py_InitModule("audioop", audioop_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
AudioopError = PyErr_NewException("audioop.error", NULL, NULL);
if (AudioopError != NULL)
diff --git a/Modules/binascii.c b/Modules/binascii.c
index 95b5050a36..2a528d078c 100644
--- a/Modules/binascii.c
+++ b/Modules/binascii.c
@@ -1334,6 +1334,8 @@ initbinascii(void)
/* Create the module and add the functions */
m = Py_InitModule("binascii", binascii_module_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
x = PyString_FromString(doc_binascii);
diff --git a/Modules/bsddbmodule.c b/Modules/bsddbmodule.c
index ac8c44395f..6bdffde7b2 100644
--- a/Modules/bsddbmodule.c
+++ b/Modules/bsddbmodule.c
@@ -849,6 +849,8 @@ initbsddb185(void) {
Bsddbtype.ob_type = &PyType_Type;
m = Py_InitModule("bsddb185", bsddbmodule_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
BsddbError = PyErr_NewException("bsddb.error", NULL, NULL);
if (BsddbError != NULL)
diff --git a/Modules/bz2module.c b/Modules/bz2module.c
index 8d9eaf40a9..272b05f9b3 100644
--- a/Modules/bz2module.c
+++ b/Modules/bz2module.c
@@ -2197,6 +2197,8 @@ initbz2(void)
BZ2Decomp_Type.ob_type = &PyType_Type;
m = Py_InitModule3("bz2", bz2_methods, bz2__doc__);
+ if (m == NULL)
+ return;
PyModule_AddObject(m, "__author__", PyString_FromString(__author__));
diff --git a/Modules/cPickle.c b/Modules/cPickle.c
index 6465139f09..c672d1f2d7 100644
--- a/Modules/cPickle.c
+++ b/Modules/cPickle.c
@@ -5741,6 +5741,8 @@ initcPickle(void)
m = Py_InitModule4("cPickle", cPickle_methods,
cPickle_module_documentation,
(PyObject*)NULL,PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/cStringIO.c b/Modules/cStringIO.c
index 81b9ac89e9..cbc632b6fb 100644
--- a/Modules/cStringIO.c
+++ b/Modules/cStringIO.c
@@ -718,6 +718,7 @@ initcStringIO(void) {
m = Py_InitModule4("cStringIO", IO_methods,
cStringIO_module_documentation,
(PyObject*)NULL,PYTHON_API_VERSION);
+ if (m == NULL) return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/cdmodule.c b/Modules/cdmodule.c
index 25add3e1b6..f8efd395a1 100644
--- a/Modules/cdmodule.c
+++ b/Modules/cdmodule.c
@@ -760,6 +760,8 @@ initcd(void)
PyObject *m, *d;
m = Py_InitModule("cd", CD_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
CdError = PyErr_NewException("cd.error", NULL, NULL);
diff --git a/Modules/clmodule.c b/Modules/clmodule.c
index 70e8f8e7d9..a535e031f5 100644
--- a/Modules/clmodule.c
+++ b/Modules/clmodule.c
@@ -963,6 +963,8 @@ initcl(void)
PyObject *m, *d, *x;
m = Py_InitModule("cl", cl_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
ClError = PyErr_NewException("cl.error", NULL, NULL);
diff --git a/Modules/cmathmodule.c b/Modules/cmathmodule.c
index 78b9dd5f8f..ec48ce8d72 100644
--- a/Modules/cmathmodule.c
+++ b/Modules/cmathmodule.c
@@ -417,6 +417,8 @@ initcmath(void)
PyObject *m;
m = Py_InitModule3("cmath", cmath_methods, module_doc);
+ if (m == NULL)
+ return;
PyModule_AddObject(m, "pi",
PyFloat_FromDouble(atan(1.0) * 4.0));
diff --git a/Modules/collectionsmodule.c b/Modules/collectionsmodule.c
index 5af568d269..1cceb4f587 100644
--- a/Modules/collectionsmodule.c
+++ b/Modules/collectionsmodule.c
@@ -1036,6 +1036,8 @@ initcollections(void)
PyObject *m;
m = Py_InitModule3("collections", NULL, module_doc);
+ if (m == NULL)
+ return;
if (PyType_Ready(&deque_type) < 0)
return;
diff --git a/Modules/datetimemodule.c b/Modules/datetimemodule.c
index e5aa73eb25..6ef6740461 100644
--- a/Modules/datetimemodule.c
+++ b/Modules/datetimemodule.c
@@ -4581,6 +4581,8 @@ initdatetime(void)
m = Py_InitModule3("datetime", module_methods,
"Fast implementation of the datetime type.");
+ if (m == NULL)
+ return;
if (PyType_Ready(&PyDateTime_DateType) < 0)
return;
diff --git a/Modules/dbmmodule.c b/Modules/dbmmodule.c
index 40d06fc268..cc963a2dfd 100644
--- a/Modules/dbmmodule.c
+++ b/Modules/dbmmodule.c
@@ -359,6 +359,8 @@ initdbm(void) {
Dbmtype.ob_type = &PyType_Type;
m = Py_InitModule("dbm", dbmmodule_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
if (DbmError == NULL)
DbmError = PyErr_NewException("dbm.error", NULL, NULL);
diff --git a/Modules/dlmodule.c b/Modules/dlmodule.c
index 927f4c0ac8..09556814f2 100644
--- a/Modules/dlmodule.c
+++ b/Modules/dlmodule.c
@@ -219,6 +219,8 @@ initdl(void)
/* Create the module and add the functions */
m = Py_InitModule("dl", dl_methods);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/errnomodule.c b/Modules/errnomodule.c
index e9c0990c28..696d396b07 100644
--- a/Modules/errnomodule.c
+++ b/Modules/errnomodule.c
@@ -57,6 +57,8 @@ initerrno(void)
{
PyObject *m, *d, *de;
m = Py_InitModule3("errno", errno_methods, errno__doc__);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
de = PyDict_New();
if (!d || !de || PyDict_SetItemString(d, "errorcode", de) < 0)
diff --git a/Modules/fcntlmodule.c b/Modules/fcntlmodule.c
index 6fa42f8199..0c02ee62ac 100644
--- a/Modules/fcntlmodule.c
+++ b/Modules/fcntlmodule.c
@@ -598,6 +598,8 @@ initfcntl(void)
/* Create the module and add the functions and documentation */
m = Py_InitModule3("fcntl", fcntl_methods, module_doc);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/flmodule.c b/Modules/flmodule.c
index 1ae2dc85bb..aa0d04e405 100644
--- a/Modules/flmodule.c
+++ b/Modules/flmodule.c
@@ -2130,6 +2130,8 @@ PyMODINIT_FUNC
initfl(void)
{
Py_InitModule("fl", forms_methods);
+ if (m == NULL)
+ return;
foreground();
fl_init();
}
diff --git a/Modules/fmmodule.c b/Modules/fmmodule.c
index 78a58772c2..0175390911 100644
--- a/Modules/fmmodule.c
+++ b/Modules/fmmodule.c
@@ -258,5 +258,7 @@ void
initfm(void)
{
Py_InitModule("fm", fm_methods);
+ if (m == NULL)
+ return;
fminit();
}
diff --git a/Modules/fpectlmodule.c b/Modules/fpectlmodule.c
index 241c1c2620..c6d4f77c23 100644
--- a/Modules/fpectlmodule.c
+++ b/Modules/fpectlmodule.c
@@ -265,6 +265,8 @@ PyMODINIT_FUNC initfpectl(void)
{
PyObject *m, *d;
m = Py_InitModule("fpectl", fpectl_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
fpe_error = PyErr_NewException("fpectl.error", NULL, NULL);
if (fpe_error != NULL)
diff --git a/Modules/fpetestmodule.c b/Modules/fpetestmodule.c
index aa14dd82a6..22e95dbaef 100644
--- a/Modules/fpetestmodule.c
+++ b/Modules/fpetestmodule.c
@@ -177,6 +177,8 @@ PyMODINIT_FUNC initfpetest(void)
PyObject *m, *d;
m = Py_InitModule("fpetest", fpetest_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
fpe_error = PyErr_NewException("fpetest.error", NULL, NULL);
if (fpe_error != NULL)
diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c
index 5366209c9a..e30e22f068 100644
--- a/Modules/gcmodule.c
+++ b/Modules/gcmodule.c
@@ -1161,6 +1161,8 @@ initgc(void)
gc__doc__,
NULL,
PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
if (garbage == NULL) {
garbage = PyList_New(0);
diff --git a/Modules/gdbmmodule.c b/Modules/gdbmmodule.c
index 03e664d6bc..6045743df3 100644
--- a/Modules/gdbmmodule.c
+++ b/Modules/gdbmmodule.c
@@ -512,6 +512,8 @@ initgdbm(void) {
m = Py_InitModule4("gdbm", dbmmodule_methods,
gdbmmodule__doc__, (PyObject *)NULL,
PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
DbmError = PyErr_NewException("gdbm.error", NULL, NULL);
if (DbmError != NULL) {
diff --git a/Modules/grpmodule.c b/Modules/grpmodule.c
index 5f33fe972f..de849c98bd 100644
--- a/Modules/grpmodule.c
+++ b/Modules/grpmodule.c
@@ -171,6 +171,8 @@ initgrp(void)
{
PyObject *m, *d;
m = Py_InitModule3("grp", grp_methods, grp__doc__);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
PyStructSequence_InitType(&StructGrpType, &struct_group_type_desc);
PyDict_SetItemString(d, "struct_group", (PyObject *) &StructGrpType);
diff --git a/Modules/imageop.c b/Modules/imageop.c
index 5b87898bbb..92f805a83b 100644
--- a/Modules/imageop.c
+++ b/Modules/imageop.c
@@ -776,6 +776,8 @@ initimageop(void)
{
PyObject *m;
m = Py_InitModule("imageop", imageop_methods);
+ if (m == NULL)
+ return;
ImageopDict = PyModule_GetDict(m);
ImageopError = PyErr_NewException("imageop.error", NULL, NULL);
if (ImageopError != NULL)
diff --git a/Modules/imgfile.c b/Modules/imgfile.c
index f9fa25bc4e..bb85a78d5c 100644
--- a/Modules/imgfile.c
+++ b/Modules/imgfile.c
@@ -492,6 +492,8 @@ initimgfile(void)
{
PyObject *m, *d;
m = Py_InitModule("imgfile", imgfile_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
ImgfileError = PyErr_NewException("imgfile.error", NULL, NULL);
if (ImgfileError != NULL)
diff --git a/Modules/itertoolsmodule.c b/Modules/itertoolsmodule.c
index 3d5e8a2075..39af2ea931 100644
--- a/Modules/itertoolsmodule.c
+++ b/Modules/itertoolsmodule.c
@@ -2454,6 +2454,8 @@ inititertools(void)
teedataobject_type.ob_type = &PyType_Type;
m = Py_InitModule3("itertools", module_methods, module_doc);
+ if (m == NULL)
+ return;
for (i=0 ; typelist[i] != NULL ; i++) {
if (PyType_Ready(typelist[i]) < 0)
diff --git a/Modules/linuxaudiodev.c b/Modules/linuxaudiodev.c
index 5aac51a6d9..7718c3be2c 100644
--- a/Modules/linuxaudiodev.c
+++ b/Modules/linuxaudiodev.c
@@ -491,6 +491,8 @@ initlinuxaudiodev(void)
PyObject *m;
m = Py_InitModule("linuxaudiodev", linuxaudiodev_methods);
+ if (m == NULL)
+ return;
LinuxAudioError = PyErr_NewException("linuxaudiodev.error", NULL, NULL);
if (LinuxAudioError)
diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c
index 260511400e..4aa1731b63 100644
--- a/Modules/mathmodule.c
+++ b/Modules/mathmodule.c
@@ -355,6 +355,8 @@ initmath(void)
PyObject *m, *d, *v;
m = Py_InitModule3("math", math_methods, module_doc);
+ if (m == NULL)
+ goto finally;
d = PyModule_GetDict(m);
if (!(v = PyFloat_FromDouble(atan(1.0) * 4.0)))
diff --git a/Modules/md5module.c b/Modules/md5module.c
index 65b83a713b..2e2677f70a 100644
--- a/Modules/md5module.c
+++ b/Modules/md5module.c
@@ -261,6 +261,8 @@ initmd5(void)
MD5type.ob_type = &PyType_Type;
m = Py_InitModule3("md5", md5_functions, module_doc);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
PyDict_SetItemString(d, "MD5Type", (PyObject *)&MD5type);
PyModule_AddIntConstant(m, "digest_size", 16);
diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c
index 8dcbe865f3..ac647bfadb 100644
--- a/Modules/mmapmodule.c
+++ b/Modules/mmapmodule.c
@@ -1093,6 +1093,8 @@ PyMODINIT_FUNC
mmap_object_type.ob_type = &PyType_Type;
module = Py_InitModule ("mmap", mmap_functions);
+ if (module == NULL)
+ return;
dict = PyModule_GetDict (module);
mmap_module_error = PyExc_EnvironmentError;
Py_INCREF(mmap_module_error);
diff --git a/Modules/nismodule.c b/Modules/nismodule.c
index 2494adbbed..207f7b8e7e 100644
--- a/Modules/nismodule.c
+++ b/Modules/nismodule.c
@@ -379,6 +379,8 @@ initnis (void)
{
PyObject *m, *d;
m = Py_InitModule("nis", nis_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
NisError = PyErr_NewException("nis.error", NULL, NULL);
if (NisError != NULL)
diff --git a/Modules/operator.c b/Modules/operator.c
index df19f6be63..86f02356ab 100644
--- a/Modules/operator.c
+++ b/Modules/operator.c
@@ -480,6 +480,8 @@ initoperator(void)
/* Create the module and add the functions */
m = Py_InitModule4("operator", operator_methods, operator_doc,
(PyObject*)NULL, PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
if (PyType_Ready(&itemgetter_type) < 0)
return;
diff --git a/Modules/ossaudiodev.c b/Modules/ossaudiodev.c
index 11592353ce..35e67635bc 100644
--- a/Modules/ossaudiodev.c
+++ b/Modules/ossaudiodev.c
@@ -943,6 +943,8 @@ initossaudiodev(void)
PyObject *m;
m = Py_InitModule("ossaudiodev", ossaudiodev_methods);
+ if (m == NULL)
+ return;
OSSAudioError = PyErr_NewException("ossaudiodev.OSSAudioError",
NULL, NULL);
diff --git a/Modules/parsermodule.c b/Modules/parsermodule.c
index eb23b58572..6c7a07df09 100644
--- a/Modules/parsermodule.c
+++ b/Modules/parsermodule.c
@@ -3106,6 +3106,8 @@ initparser(void)
PyST_Type.ob_type = &PyType_Type;
module = Py_InitModule("parser", parser_functions);
+ if (module == NULL)
+ return;
if (parser_error == 0)
parser_error = PyErr_NewException("parser.ParserError", NULL, NULL);
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index f9718f3856..8906e2b478 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -7935,6 +7935,8 @@ INITFUNC(void)
m = Py_InitModule3(MODNAME,
posix_methods,
posix__doc__);
+ if (m == NULL)
+ return;
/* Initialize environ dictionary */
v = convertenviron();
diff --git a/Modules/puremodule.c b/Modules/puremodule.c
index 43c64414cb..95f4bdecdb 100644
--- a/Modules/puremodule.c
+++ b/Modules/puremodule.c
@@ -952,6 +952,8 @@ initpure()
PyObject *m, *d;
m = Py_InitModule("pure", pure_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
/* this is bogus because we should be able to find this information
diff --git a/Modules/pwdmodule.c b/Modules/pwdmodule.c
index f418e43c9a..9e7b864b75 100644
--- a/Modules/pwdmodule.c
+++ b/Modules/pwdmodule.c
@@ -183,6 +183,8 @@ initpwd(void)
{
PyObject *m;
m = Py_InitModule3("pwd", pwd_methods, pwd__doc__);
+ if (m == NULL)
+ return;
PyStructSequence_InitType(&StructPwdType, &struct_pwd_type_desc);
Py_INCREF((PyObject *) &StructPwdType);
diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c
index 2317d2ec01..9160bf2ee2 100644
--- a/Modules/pyexpat.c
+++ b/Modules/pyexpat.c
@@ -1853,6 +1853,8 @@ MODULE_INITFUNC(void)
/* Create the module and add the functions */
m = Py_InitModule3(MODULE_NAME, pyexpat_methods,
pyexpat_module_documentation);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
if (ErrorObject == NULL) {
diff --git a/Modules/readline.c b/Modules/readline.c
index 43ac628130..a01935ba96 100644
--- a/Modules/readline.c
+++ b/Modules/readline.c
@@ -927,6 +927,8 @@ initreadline(void)
m = Py_InitModule4("readline", readline_methods, doc_module,
(PyObject *)NULL, PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
PyOS_ReadlineFunctionPointer = call_readline;
setup_readline();
diff --git a/Modules/regexmodule.c b/Modules/regexmodule.c
index f75e9b20ef..2fb4198207 100644
--- a/Modules/regexmodule.c
+++ b/Modules/regexmodule.c
@@ -652,6 +652,8 @@ initregex(void)
Regextype.ob_type = &PyType_Type;
m = Py_InitModule("regex", regex_global_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
if (PyErr_Warn(PyExc_DeprecationWarning,
diff --git a/Modules/resource.c b/Modules/resource.c
index c5bec79043..7cbd2c94b4 100644
--- a/Modules/resource.c
+++ b/Modules/resource.c
@@ -234,6 +234,8 @@ initresource(void)
/* Create the module and add the functions */
m = Py_InitModule("resource", resource_methods);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
if (ResourceError == NULL) {
diff --git a/Modules/rgbimgmodule.c b/Modules/rgbimgmodule.c
index 904c64b642..8c70d95e74 100644
--- a/Modules/rgbimgmodule.c
+++ b/Modules/rgbimgmodule.c
@@ -756,6 +756,8 @@ initrgbimg(void)
{
PyObject *m, *d;
m = Py_InitModule("rgbimg", rgbimg_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
ImgfileError = PyErr_NewException("rgbimg.error", NULL, NULL);
if (ImgfileError != NULL)
diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c
index ed2ea8197c..53c68c1a55 100644
--- a/Modules/selectmodule.c
+++ b/Modules/selectmodule.c
@@ -662,6 +662,8 @@ initselect(void)
{
PyObject *m;
m = Py_InitModule3("select", select_methods, module_doc);
+ if (m == NULL)
+ return;
SelectError = PyErr_NewException("select.error", NULL, NULL);
Py_INCREF(SelectError);
diff --git a/Modules/shamodule.c b/Modules/shamodule.c
index 1b3b76a09f..fa61929883 100644
--- a/Modules/shamodule.c
+++ b/Modules/shamodule.c
@@ -532,6 +532,8 @@ initsha(void)
SHAtype.ob_type = &PyType_Type;
m = Py_InitModule("sha", SHA_functions);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
insint("blocksize", 1); /* For future use, in case some hash
diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c
index bec27293e9..a729604a31 100644
--- a/Modules/signalmodule.c
+++ b/Modules/signalmodule.c
@@ -317,6 +317,8 @@ initsignal(void)
/* Create the module and add the functions */
m = Py_InitModule3("signal", signal_methods, module_doc);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
d = PyModule_GetDict(m);
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 4f46ba6e7c..a63c882740 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -3872,6 +3872,8 @@ init_socket(void)
m = Py_InitModule3(PySocket_MODULE_NAME,
socket_methods,
socket_doc);
+ if (m == NULL)
+ return;
socket_error = PyErr_NewException("socket.error", NULL, NULL);
if (socket_error == NULL)
diff --git a/Modules/stropmodule.c b/Modules/stropmodule.c
index ce19a053a0..30b86d4624 100644
--- a/Modules/stropmodule.c
+++ b/Modules/stropmodule.c
@@ -1210,6 +1210,8 @@ initstrop(void)
int c, n;
m = Py_InitModule4("strop", strop_methods, strop_module__doc__,
(PyObject*)NULL, PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
/* Create 'whitespace' object */
n = 0;
diff --git a/Modules/structmodule.c b/Modules/structmodule.c
index 137b8988e0..f07f21a30c 100644
--- a/Modules/structmodule.c
+++ b/Modules/structmodule.c
@@ -1278,6 +1278,8 @@ initstruct(void)
/* Create the module and add the functions */
m = Py_InitModule4("struct", struct_methods, struct__doc__,
(PyObject*)NULL, PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
if (StructError == NULL) {
diff --git a/Modules/sunaudiodev.c b/Modules/sunaudiodev.c
index 3269c761d6..802184d0d6 100644
--- a/Modules/sunaudiodev.c
+++ b/Modules/sunaudiodev.c
@@ -456,6 +456,8 @@ initsunaudiodev(void)
PyObject *m, *d;
m = Py_InitModule("sunaudiodev", sunaudiodev_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
SunAudioError = PyErr_NewException("sunaudiodev.error", NULL, NULL);
if (SunAudioError)
diff --git a/Modules/svmodule.c b/Modules/svmodule.c
index 9bd79686c4..fb58f19cc3 100644
--- a/Modules/svmodule.c
+++ b/Modules/svmodule.c
@@ -956,6 +956,8 @@ initsv(void)
PyObject *m, *d;
m = Py_InitModule("sv", sv_methods);
+ if (m == NULL)
+ return;
d = PyModule_GetDict(m);
SvError = PyErr_NewException("sv.error", NULL, NULL);
diff --git a/Modules/symtablemodule.c b/Modules/symtablemodule.c
index 909a404fdc..53999a7680 100644
--- a/Modules/symtablemodule.c
+++ b/Modules/symtablemodule.c
@@ -51,6 +51,8 @@ init_symtable(void)
PyObject *m;
m = Py_InitModule("_symtable", symtable_methods);
+ if (m == NULL)
+ return;
PyModule_AddIntConstant(m, "USE", USE);
PyModule_AddIntConstant(m, "DEF_GLOBAL", DEF_GLOBAL);
PyModule_AddIntConstant(m, "DEF_LOCAL", DEF_LOCAL);
diff --git a/Modules/syslogmodule.c b/Modules/syslogmodule.c
index 1f2b874fdb..dd35923139 100644
--- a/Modules/syslogmodule.c
+++ b/Modules/syslogmodule.c
@@ -163,6 +163,8 @@ initsyslog(void)
/* Create the module and add the functions */
m = Py_InitModule("syslog", syslog_methods);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
diff --git a/Modules/termios.c b/Modules/termios.c
index a1d14a18b8..c53566c12b 100644
--- a/Modules/termios.c
+++ b/Modules/termios.c
@@ -910,6 +910,8 @@ PyInit_termios(void)
m = Py_InitModule4("termios", termios_methods, termios__doc__,
(PyObject *)NULL, PYTHON_API_VERSION);
+ if (m == NULL)
+ return;
if (TermiosError == NULL) {
TermiosError = PyErr_NewException("termios.error", NULL, NULL);
diff --git a/Modules/threadmodule.c b/Modules/threadmodule.c
index 052262cda2..831da13c53 100644
--- a/Modules/threadmodule.c
+++ b/Modules/threadmodule.c
@@ -650,6 +650,8 @@ initthread(void)
/* Create the module and add the functions */
m = Py_InitModule3("thread", thread_methods, thread_doc);
+ if (m == NULL)
+ return;
/* Add a symbolic constant */
d = PyModule_GetDict(m);
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
index 2cd9a571f3..ba93957b88 100644
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -785,6 +785,8 @@ inittime(void)
PyObject *m;
char *p;
m = Py_InitModule3("time", time_methods, module_doc);
+ if (m == NULL)
+ return;
/* Accept 2-digit dates unless PYTHONY2K is set and non-empty */
p = Py_GETENV("PYTHONY2K");
diff --git a/Modules/xxmodule.c b/Modules/xxmodule.c
index 5f75b6cf8f..ea66eefa0a 100644
--- a/Modules/xxmodule.c
+++ b/Modules/xxmodule.c
@@ -352,6 +352,8 @@ initxx(void)
/* Create the module and add the functions */
m = Py_InitModule3("xx", xx_methods, module_doc);
+ if (m == NULL)
+ return;
/* Add some symbolic constants to the module */
if (ErrorObject == NULL) {