diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-02-10 07:48:49 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-02-10 07:48:49 +0300 |
commit | 30ada8fdd3b847844e49f0a0cce0124460821b31 (patch) | |
tree | 30404b7cecb8dd8412b3c38be5f1eb07df339c90 /source/blender/editors/object | |
parent | 0ebf448beea18856defaddbbfd842f0911cca431 (diff) |
fix [#26003] Twice applied modifier with Convert to mesh with several multi-user objects
convert_exec could do with a re-write, getting quite confusing.
update md5's for ctest results and some renaming in mesh_validate code.
Diffstat (limited to 'source/blender/editors/object')
-rw-r--r-- | source/blender/editors/object/object_add.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index 536e21b8f97..08a31923cda 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -1116,6 +1116,15 @@ static int convert_exec(bContext *C, wmOperator *op) base->flag &= ~SELECT; ob->flag &= ~SELECT; } + + /* obdata already modified */ + if(!IS_TAGGED(ob->data)) { + /* When 2 objects with linked data are selected, converting both + * would keep modifiers on all but the converted object [#26003] */ + if(ob->type == OB_MESH) { + object_free_modifiers(ob); /* after derivedmesh calls! */ + } + } } else if (ob->type==OB_MESH && target == OB_CURVE) { ob->flag |= OB_DONE; |