diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-07-23 22:30:14 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-07-23 22:30:14 +0400 |
commit | 318c975dcbe428cf61f41056e64c5083ffdb330e (patch) | |
tree | d92adae94eb72ee49f9f5870013fb2b0f83963ff /source/blender | |
parent | 4e62175989cd438078a36ee82e903686c39e02db (diff) |
bugfix [#22954] Crash going edit mode on an object linked in another scene (Kino Bug Reporting Sprint :)
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/object/object_edit.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c index 78f8e0e11d3..0d3ebc7f669 100644 --- a/source/blender/editors/object/object_edit.c +++ b/source/blender/editors/object/object_edit.c @@ -435,7 +435,12 @@ void ED_object_enter_editmode(bContext *C, int flag) if(flag & EM_WAITCURSOR) waitcursor(1); ob->restore_mode = ob->mode; - ED_object_toggle_modes(C, ob->mode); + + /* note, when switching scenes the object can have editmode data but + * not be scene->obedit: bug 22954, this avoids calling self eternally */ + if((ob->restore_mode & OB_MODE_EDIT)==0) + ED_object_toggle_modes(C, ob->mode); + ob->mode= OB_MODE_EDIT; if(ob->type==OB_MESH) { |