diff --git a/bob/ip/draw/main.cpp b/bob/ip/draw/main.cpp index 9df515a..39da4eb 100644 --- a/bob/ip/draw/main.cpp +++ b/bob/ip/draw/main.cpp @@ -238,17 +238,19 @@ static PyModuleDef module_definition = { static PyObject* create_module (void) { # if PY_VERSION_HEX >= 0x03000000 - PyObject* m = PyModule_Create(&module_definition); + PyObject* module = PyModule_Create(&module_definition); + auto module_ = make_xsafe(module); + const char* ret = "O"; # else - PyObject* m = Py_InitModule3(BOB_EXT_MODULE_NAME, module_methods, module_docstr); + PyObject* module = Py_InitModule3(BOB_EXT_MODULE_NAME, module_methods, module_docstr); + const char* ret = "N"; # endif - if (!m) return 0; - auto m_ = make_safe(m); ///< protects against early returns + if (!module) return 0; /* imports bob.blitz C-API + dependencies */ if (import_bob_blitz() < 0) return 0; - return Py_BuildValue("O", m); + return Py_BuildValue(ret, module); } PyMODINIT_FUNC BOB_EXT_ENTRY_NAME (void) { diff --git a/bob/ip/draw/version.cpp b/bob/ip/draw/version.cpp index 756cbdb..2c26c6c 100644 --- a/bob/ip/draw/version.cpp +++ b/bob/ip/draw/version.cpp @@ -50,21 +50,23 @@ static PyModuleDef module_definition = { static PyObject* create_module (void) { # if PY_VERSION_HEX >= 0x03000000 - PyObject* m = PyModule_Create(&module_definition); + PyObject* module = PyModule_Create(&module_definition); + auto module_ = make_xsafe(module); + const char* ret = "O"; # else - PyObject* m = Py_InitModule3(BOB_EXT_MODULE_NAME, module_methods, module_docstr); + PyObject* module = Py_InitModule3(BOB_EXT_MODULE_NAME, module_methods, module_docstr); + const char* ret = "N"; # endif - if (!m) return 0; - auto m_ = make_safe(m); ///< protects against early returns + if (!module) return 0; /* register version numbers and constants */ - if (PyModule_AddStringConstant(m, "module", BOB_EXT_MODULE_VERSION) < 0) return 0; + if (PyModule_AddStringConstant(module, "module", BOB_EXT_MODULE_VERSION) < 0) return 0; PyObject* externals = build_version_dictionary(); if (!externals) return 0; - if (PyModule_AddObject(m, "externals", externals) < 0) return 0; + if (PyModule_AddObject(module, "externals", externals) < 0) return 0; - return Py_BuildValue("O", m); + return Py_BuildValue(ret, module); } PyMODINIT_FUNC BOB_EXT_ENTRY_NAME (void) {