Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scriptableapplication/pythonutils.cpp')
-rw-r--r--examples/scriptableapplication/pythonutils.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/examples/scriptableapplication/pythonutils.cpp b/examples/scriptableapplication/pythonutils.cpp
index eef2fada7..18ac35112 100644
--- a/examples/scriptableapplication/pythonutils.cpp
+++ b/examples/scriptableapplication/pythonutils.cpp
@@ -64,11 +64,8 @@
/* from AppLib bindings */
-#if PY_MAJOR_VERSION >= 3
- extern "C" PyObject *PyInit_AppLib();
-#else
- extern "C" void initAppLib();
-#endif
+extern "C" PyObject *PyInit_AppLib();
+static const char moduleName[] = "AppLib";
// This variable stores all Python types exported by this module.
extern PyTypeObject **SbkAppLibTypes;
@@ -111,15 +108,15 @@ State init()
if (qEnvironmentVariableIsSet(virtualEnvVar))
initVirtualEnvironment();
+ if (PyImport_AppendInittab(moduleName, PyInit_AppLib) == -1) {
+ qWarning("Failed to add the module '%s' to the table of built-in modules.", moduleName);
+ return state;
+ }
+
Py_Initialize();
qAddPostRoutine(cleanup);
state = PythonInitialized;
-#if PY_MAJOR_VERSION >= 3
const bool pythonInitialized = PyInit_AppLib() != nullptr;
-#else
- const bool pythonInitialized = true;
- initAppLib();
-#endif
const bool pyErrorOccurred = PyErr_Occurred() != nullptr;
if (pythonInitialized && !pyErrorOccurred) {
state = AppModuleLoaded;