From a7ed1db51fa32a80b943816d354b45b413d98fa3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lukas=20T=C3=B6nne?= <lukas.toenne@gmail.com>
Date: Tue, 25 Mar 2014 12:33:07 +0100
Subject: [PATCH] Fix T39319: Particle System Bug on Cycles Render.

Crashes due to bad dm face calculation in particle RNA/cycles hair.
This stuff is a total mess, but this kind of check is used in other
places and prevents crashing at least.
---
 source/blender/makesrna/intern/rna_particle.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/source/blender/makesrna/intern/rna_particle.c b/source/blender/makesrna/intern/rna_particle.c
index 31e87f44a6a..f6f133c5114 100644
--- a/source/blender/makesrna/intern/rna_particle.c
+++ b/source/blender/makesrna/intern/rna_particle.c
@@ -475,7 +475,8 @@ static void rna_ParticleSystem_uv_on_emitter(ParticleSystem *particlesystem, Rep
 	if (particle_no < totpart) {
 
 		/* get uvco & mcol */
-		num = particle->num_dmcache;
+		num = (ELEM(particle->num_dmcache, DMCACHE_ISCHILD, DMCACHE_NOTFOUND)) ?
+		          particle->num : particle->num_dmcache;
 
 		if (num == DMCACHE_NOTFOUND)
 			if (particle->num < modifier->dm->getNumTessFaces(modifier->dm))
-- 
GitLab