summaryrefslogtreecommitdiffstats
path: root/Modules/fpectlmodule.c
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/fpectlmodule.c')
-rw-r--r--Modules/fpectlmodule.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/Modules/fpectlmodule.c b/Modules/fpectlmodule.c
index 0b7e8d7..b0ba9db 100644
--- a/Modules/fpectlmodule.c
+++ b/Modules/fpectlmodule.c
@@ -227,17 +227,11 @@ static void sigfpe_handler(int signo)
void initfpectl(void)
{
PyObject *m, *d;
- static int already_initialized = 0;
-
- if (already_initialized) return;
m = Py_InitModule("fpectl", fpectl_methods);
d = PyModule_GetDict(m);
- fpe_error = PyString_FromString("fpectl.error");
- PyDict_SetItemString(d, "error", fpe_error);
-
- if (PyErr_Occurred())
- Py_FatalError("Cannot initialize module fpectl");
- already_initialized = 1;
+ fpe_error = PyErr_NewException("fpectl.error", NULL, NULL);
+ if (fpe_error != NULL)
+ PyDict_SetItemString(d, "error", fpe_error);
}
#ifdef __cplusplus