diff options
Diffstat (limited to 'source/blender/python')
-rw-r--r-- | source/blender/python/intern/bpy_interface.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/python/intern/bpy_interface.c b/source/blender/python/intern/bpy_interface.c index 7caf07a0973..3478edb3809 100644 --- a/source/blender/python/intern/bpy_interface.c +++ b/source/blender/python/intern/bpy_interface.c @@ -380,12 +380,14 @@ int BPY_run_python_script( bContext *C, const char *fn, struct Text *text, struc if(py_dict) { #ifdef PYMODULE_CLEAR_WORKAROUND PyObject *py_dict_back= PyDict_Copy(py_dict); + Py_INCREF(py_dict); #endif /* normal */ PyDict_SetItemString(PyThreadState_GET()->interp->modules, "__main__", Py_None); #ifdef PYMODULE_CLEAR_WORKAROUND PyDict_Clear(py_dict); PyDict_Update(py_dict, py_dict_back); + Py_DECREF(py_dict); Py_DECREF(py_dict_back); #endif #undef PYMODULE_CLEAR_WORKAROUND |