diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2017-10-16 08:45:03 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2017-10-16 08:45:17 -0400 |
commit | d5ab9acf4c57fe54ddef02f9dbeac6d6d34aa2ed (patch) | |
tree | 126c362ac5cacc8baf964999857aaab6f404da89 | |
parent | 1b241b06b2d9badf1f4021150fef39ada7601b63 (diff) | |
download | python-coveragepy-git-d5ab9acf4c57fe54ddef02f9dbeac6d6d34aa2ed.tar.gz |
Fix the initialization of the module
-rw-r--r-- | coverage/ctracer/module.c | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/coverage/ctracer/module.c b/coverage/ctracer/module.c index 89eb7be0..113f5545 100644 --- a/coverage/ctracer/module.c +++ b/coverage/ctracer/module.c @@ -44,16 +44,17 @@ PyInit_tracer(void) return NULL; } - InternTableType.tp_new = PyType_GenericNew; - if (PyType_Ready(&InternTableType) < 0) { + Py_INCREF(&CTracerType); + if (PyModule_AddObject(mod, "CTracer", (PyObject *)&CTracerType) < 0) { Py_DECREF(mod); + Py_DECREF(&CTracerType); return NULL; } - Py_INCREF(&CTracerType); - if (PyModule_AddObject(mod, "CTracer", (PyObject *)&CTracerType) < 0) { + /* Initialize InternTable */ + InternTableType.tp_new = PyType_GenericNew; + if (PyType_Ready(&InternTableType) < 0) { Py_DECREF(mod); - Py_DECREF(&CTracerType); return NULL; } @@ -61,7 +62,6 @@ PyInit_tracer(void) if (PyModule_AddObject(mod, "InternTable", (PyObject *)&InternTableType) < 0) { Py_DECREF(mod); Py_DECREF(&InternTableType); - Py_DECREF(&InternTableType); return NULL; } @@ -70,6 +70,7 @@ PyInit_tracer(void) if (PyType_Ready(&CFileDispositionType) < 0) { Py_DECREF(mod); Py_DECREF(&CTracerType); + Py_DECREF(&InternTableType); return NULL; } @@ -77,6 +78,7 @@ PyInit_tracer(void) if (PyModule_AddObject(mod, "CFileDisposition", (PyObject *)&CFileDispositionType) < 0) { Py_DECREF(mod); Py_DECREF(&CTracerType); + Py_DECREF(&InternTableType); Py_DECREF(&CFileDispositionType); return NULL; } @@ -109,6 +111,15 @@ inittracer(void) Py_INCREF(&CTracerType); PyModule_AddObject(mod, "CTracer", (PyObject *)&CTracerType); + /* Initialize InternTable */ + InternTableType.tp_new = PyType_GenericNew; + if (PyType_Ready(&InternTableType) < 0) { + return; + } + + Py_INCREF(&InternTableType); + PyModule_AddObject(mod, "InternTable", (PyObject *)&InternTableType); + /* Initialize CFileDisposition */ CFileDispositionType.tp_new = PyType_GenericNew; if (PyType_Ready(&CFileDispositionType) < 0) { |