diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2014-08-25 22:58:36 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2014-08-25 22:58:36 +0400 |
commit | d822624adcaa04483cc7d694baa728a281de9b3d (patch) | |
tree | 3c71103649fc82753e7d1f9aeee8475a5be44fb1 /source/blender/modifiers/intern/MOD_cast.c | |
parent | 66b84ad1592d8f89ef85fa64006fea0b59a55565 (diff) |
Fix T41580: Cast modifier - Edit Cache problems.
Modifiers should never ever modify data from target objects!!! With multithreaded
evaluation, this is a nice bug factory!
Diffstat (limited to 'source/blender/modifiers/intern/MOD_cast.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_cast.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_cast.c b/source/blender/modifiers/intern/MOD_cast.c index ec077631c85..c4654287cfc 100644 --- a/source/blender/modifiers/intern/MOD_cast.c +++ b/source/blender/modifiers/intern/MOD_cast.c @@ -151,8 +151,8 @@ static void sphere_do( * we use its location, transformed to ob's local space */ if (ctrl_ob) { if (flag & MOD_CAST_USE_OB_TRANSFORM) { - invert_m4_m4(ctrl_ob->imat, ctrl_ob->obmat); - mul_m4_m4m4(mat, ctrl_ob->imat, ob->obmat); + invert_m4_m4(imat, ctrl_ob->obmat); + mul_m4_m4m4(mat, imat, ob->obmat); invert_m4_m4(imat, mat); } @@ -275,8 +275,8 @@ static void cuboid_do( if (ctrl_ob) { if (flag & MOD_CAST_USE_OB_TRANSFORM) { - invert_m4_m4(ctrl_ob->imat, ctrl_ob->obmat); - mul_m4_m4m4(mat, ctrl_ob->imat, ob->obmat); + invert_m4_m4(imat, ctrl_ob->obmat); + mul_m4_m4m4(mat, imat, ob->obmat); invert_m4_m4(imat, mat); } |