summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/mathmodule.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c
index 6e2d65b..b993bfc 100644
--- a/Modules/mathmodule.c
+++ b/Modules/mathmodule.c
@@ -242,8 +242,19 @@ initmath()
m = Py_InitModule("math", math_methods);
d = PyModule_GetDict(m);
- PyDict_SetItemString(d, "pi", v = PyFloat_FromDouble(atan(1.0) * 4.0));
+
+ if (!(v = PyFloat_FromDouble(atan(1.0) * 4.0)))
+ goto finally;
+ if (PyDict_SetItemString(d, "pi", v) < 0)
+ goto finally;
Py_DECREF(v);
- PyDict_SetItemString(d, "e", v = PyFloat_FromDouble(exp(1.0)));
+
+ if (!(v = PyFloat_FromDouble(exp(1.0))))
+ goto finally;
+ if (PyDict_SetItemString(d, "e", ) < 0)
+ goto finally;
Py_DECREF(v);
+
+ finally:
+ Py_FatalError("can't initialize math module");
}