Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2010-04-04 14:37:47 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2010-04-04 14:37:47 +0400
commita5156d139e2bd0a9db80ffd097ceb22e22ece16b (patch)
tree4eb19aa112a21632180ded9066f0702e79c9f701 /source/blender/blenkernel
parent5de041c51f2a3d9969a8523c953157e69a0c8d24 (diff)
Fix crash entering edit mode on linked duplicate meshes with
dupliverts. The flag mode & OB_MODE_EDIT only indicates that this object is being edited by the user, not if the mesh is in editmode or not, it should check for the existence of me->edit_mesh. Also corrected two other places for this.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/anim.c4
-rw-r--r--source/blender/blenkernel/intern/object.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/anim.c b/source/blender/blenkernel/intern/anim.c
index e26072deb76..b687062fe15 100644
--- a/source/blender/blenkernel/intern/anim.c
+++ b/source/blender/blenkernel/intern/anim.c
@@ -837,7 +837,7 @@ static void vertex_duplilist(ListBase *lb, ID *id, Scene *scene, Object *par, fl
/* mballs have a different dupli handling */
if(ob->type!=OB_MBALL) ob->flag |= OB_DONE; /* doesnt render */
- if(par->mode & OB_MODE_EDIT) {
+ if(me->edit_mesh) {
dm->foreachMappedVert(dm, vertex_dupli__mapFunc, (void*) &vdd);
}
else {
@@ -1048,7 +1048,7 @@ static void face_duplilist(ListBase *lb, ID *id, Scene *scene, Object *par, floa
else go= go->next; /* group loop */
}
- if(par->mode & OB_MODE_EDIT) {
+ if(em) {
MEM_freeN(mface);
MEM_freeN(mvert);
}
diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index bb7c77408ac..ac679adb9c1 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -2502,7 +2502,7 @@ void object_handle_update(Scene *scene, Object *ob)
BKE_animsys_evaluate_animdata(data_id, adt, ctime, ADT_RECALC_DRIVERS);
// here was vieweditdatamask? XXX
- if(ob->mode & OB_MODE_EDIT) {
+ if(em) {
makeDerivedMesh(scene, ob, em, CD_MASK_BAREMESH);
BKE_mesh_end_editmesh(ob->data, em);
} else