diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-11-24 21:37:54 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-11-24 21:37:54 +0300 |
commit | 315879db111564dc3e4377ca72868557b3587d83 (patch) | |
tree | 2823335f5477b42e9ecdf6b4055a32701882ba3e | |
parent | 2c70b1785c02f8f2c3ac8aeae279a9b8a484d141 (diff) |
bugfix [#24884] Loading any preset leads to crash
caused by own recent commit. update uv operator template too.
-rw-r--r-- | release/scripts/templates/operator_uv.py | 2 | ||||
-rw-r--r-- | source/blender/python/intern/bpy_interface.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/release/scripts/templates/operator_uv.py b/release/scripts/templates/operator_uv.py index 305496e31ce..e0cf8dd5db4 100644 --- a/release/scripts/templates/operator_uv.py +++ b/release/scripts/templates/operator_uv.py @@ -11,6 +11,8 @@ def main(context): if not mesh.uv_textures: uvtex = bpy.ops.mesh.uv_texture_add() + else: + uvtex = mesh.uv_textures.active # adjust UVs for i, uv in enumerate(uvtex.data): 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 |