[Bf-blender-cvs] [1dd92f3] master: Fix T45385: Crash on render occurring when two hair modifiers are active that both use a UV mapped material for render

Sergey Sharybin noreply at git.blender.org
Mon Jul 13 11:05:23 CEST 2015


Commit: 1dd92f352bc730a90591a9e728477f037a2a2886
Author: Sergey Sharybin
Date:   Mon Jul 13 11:01:34 2015 +0200
Branches: master
https://developer.blender.org/rB1dd92f352bc730a90591a9e728477f037a2a2886

Fix T45385: Crash on render occurring when two hair modifiers are active that both use a UV mapped material for render

Not sure it's totally correct solution, but seems reasonable because it's
possible dmcache is set to ISCHILD.

Someone more familiar with the particles code might want to revisit this :)

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

M	source/blender/render/intern/source/convertblender.c

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

diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c
index 1da1a81..9392bae 100644
--- a/source/blender/render/intern/source/convertblender.c
+++ b/source/blender/render/intern/source/convertblender.c
@@ -1250,7 +1250,7 @@ static void get_particle_uvco_mcol(short from, DerivedMesh *dm, float *fuv, int
 	/* get uvco */
 	if (sd->uvco && ELEM(from, PART_FROM_FACE, PART_FROM_VOLUME)) {
 		for (i=0; i<sd->totuv; i++) {
-			if (num != DMCACHE_NOTFOUND) {
+			if (!ELEM(num, DMCACHE_NOTFOUND, DMCACHE_ISCHILD)) {
 				MFace *mface = dm->getTessFaceData(dm, num, CD_MFACE);
 				MTFace *mtface = (MTFace*)CustomData_get_layer_n(&dm->faceData, CD_MTFACE, i);
 				mtface += num;




More information about the Bf-blender-cvs mailing list