[Bf-blender-cvs] [5b8af1d] master: Fix T44704: BGE regression importing bpy.types
Campbell Barton
noreply at git.blender.org
Mon Jun 15 13:16:46 CEST 2015
Commit: 5b8af1d1f1940a879e81fdb0107eb4cf42455dd2
Author: Campbell Barton
Date: Mon Jun 15 21:11:45 2015 +1000
Branches: master
https://developer.blender.org/rB5b8af1d1f1940a879e81fdb0107eb4cf42455dd2
Fix T44704: BGE regression importing bpy.types
===================================================================
M source/gameengine/Ketsji/KX_PythonInit.cpp
===================================================================
diff --git a/source/gameengine/Ketsji/KX_PythonInit.cpp b/source/gameengine/Ketsji/KX_PythonInit.cpp
index 6fdc53f..80e56a4 100644
--- a/source/gameengine/Ketsji/KX_PythonInit.cpp
+++ b/source/gameengine/Ketsji/KX_PythonInit.cpp
@@ -2020,33 +2020,45 @@ PyMODINIT_FUNC initBGE(void)
PyObject *mod;
PyObject *submodule;
PyObject *sys_modules = PyThreadState_GET()->interp->modules;
+ const char *mod_full;
mod = PyModule_Create(&BGE_module_def);
- PyModule_AddObject(mod, "constraints", (submodule = initConstraintPythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ /* skip "bge." */
+#define SUBMOD (mod_full + 4)
+
+ mod_full = "bge.constraints";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initConstraintPythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
- PyModule_AddObject(mod, "events", (submodule = initGameKeysPythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ mod_full = "bge.events";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initGameKeysPythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
- PyModule_AddObject(mod, "logic", (submodule = initGameLogicPythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ mod_full = "bge.logic";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initGameLogicPythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
- PyModule_AddObject(mod, "render", (submodule = initRasterizerPythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ mod_full = "bge.render";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initRasterizerPythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
- PyModule_AddObject(mod, "texture", (submodule = initVideoTexturePythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ mod_full = "bge.texture";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initVideoTexturePythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
- PyModule_AddObject(mod, "types", (submodule = initGameTypesPythonBinding()));
- PyDict_SetItemString(sys_modules, PyModule_GetName(submodule), submodule);
+ mod_full = "bge.types";
+ PyModule_AddObject(mod, SUBMOD, (submodule = initGameTypesPythonBinding()));
+ PyDict_SetItemString(sys_modules, mod_full, submodule);
Py_INCREF(submodule);
+#undef SUBMOD
+
return mod;
}
More information about the Bf-blender-cvs
mailing list