[Bf-blender-cvs] [06ca2c9d032] master: Fix T51390: Blender 2.78c will freeze or force close when adding particles at random.

Bastien Montagne noreply at git.blender.org
Mon May 29 16:12:34 CEST 2017


Commit: 06ca2c9d0320a4a4beae3c6ca5576ed208331dcb
Author: Bastien Montagne
Date:   Mon May 29 16:05:35 2017 +0200
Branches: master
https://developer.blender.org/rB06ca2c9d0320a4a4beae3c6ca5576ed208331dcb

Fix T51390: Blender 2.78c will freeze or force close when adding particles at random.

DM evaluation code was simply never clearing the `deformedOnly` flag
when evaluating a generative modifier...

Quite astonishing this never got catched before, a lot of particle code
relies on valid value of this flag!!!

===================================================================

M	source/blender/blenkernel/intern/DerivedMesh.c

===================================================================

diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c
index 1f86f616bd3..18e9bdf6cd1 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -2123,6 +2123,8 @@ static void mesh_calc_modifiers(
 				DM_update_weight_mcol(ob, dm, draw_flag, NULL, 0, NULL);
 				append_mask |= CD_MASK_PREVIEW_MLOOPCOL;
 			}
+
+			dm->deformedOnly = false;
 		}
 
 		isPrevDeform = (mti->type == eModifierTypeType_OnlyDeform);
@@ -2463,6 +2465,8 @@ static void editbmesh_calc_modifiers(
 					deformedVerts = NULL;
 				}
 			}
+
+			dm->deformedOnly = false;
 		}
 
 		/* In case of active preview modifier, make sure preview mask remains for following modifiers. */




More information about the Bf-blender-cvs mailing list