[Bf-blender-cvs] [48c50be] blender-v2.76-release: Fix T46420: Segfault when instancing smoke domain.

Bastien Montagne noreply at git.blender.org
Fri Oct 9 13:33:32 CEST 2015


Commit: 48c50bea72de544938bdb92dd5ce5b0b2b6bc795
Author: Bastien Montagne
Date:   Fri Oct 9 10:51:38 2015 +0200
Branches: blender-v2.76-release
https://developer.blender.org/rB48c50bea72de544938bdb92dd5ce5b0b2b6bc795

Fix T46420: Segfault when instancing smoke domain.

Looks like instancing of smoke sim is not supported at all
(was fake-working in 3DView in 2.74, but not rendered).

But it should not crash - code was adding temp 'fromdupli' base to the delayed
drawing list...

Nice to backport this to 2.76 I think.

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

M	source/blender/editors/space_view3d/drawobject.c

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

diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c
index f5cce27..55abd98 100644
--- a/source/blender/editors/space_view3d/drawobject.c
+++ b/source/blender/editors/space_view3d/drawobject.c
@@ -7653,7 +7653,9 @@ void draw_object(Scene *scene, ARegion *ar, View3D *v3d, Base *base, const short
 		}
 	}
 
-	if ((md = modifiers_findByType(ob, eModifierType_Smoke)) && (modifier_isEnabled(scene, md, eModifierMode_Realtime))) {
+	if (((base->flag & OB_FROMDUPLI) == 0) &&
+	    (md = modifiers_findByType(ob, eModifierType_Smoke)) &&
+	    (modifier_isEnabled(scene, md, eModifierMode_Realtime))) {
 		smd = (SmokeModifierData *)md;
 
 		if (smd->domain) {




More information about the Bf-blender-cvs mailing list