[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [12728] trunk/blender/source/blender/ blenkernel/intern/modifier.c: Fix for bug #7846

Janne Karhu jhkarh at utu.fi
Thu Nov 29 23:04:07 CET 2007


Revision: 12728
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=12728
Author:   jhk
Date:     2007-11-29 23:04:07 +0100 (Thu, 29 Nov 2007)

Log Message:
-----------
Fix for bug #7846

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/modifier.c

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2007-11-29 21:09:16 UTC (rev 12727)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2007-11-29 22:04:07 UTC (rev 12728)
@@ -5507,7 +5507,7 @@
 	/* make tree of emitter locations */
 	tree=BLI_kdtree_new(totpart);
 	for(p=0,pa=psys->particles; p<totpart; p++,pa++){
-		psys_particle_on_dm(ob,dm,psys->part->from,pa->num,pa->num_dmcache,pa->fuv,pa->foffset,co,0,0,0);
+		psys_particle_on_dm(ob,psmd->dm,psys->part->from,pa->num,pa->num_dmcache,pa->fuv,pa->foffset,co,0,0,0);
 		BLI_kdtree_insert(tree, p, co, NULL);
 	}
 	BLI_kdtree_balance(tree);
@@ -6194,7 +6194,10 @@
 		if(psys->part==0 || psys->particles==0) return derivedData;
 
 		/* 1. find faces to be exploded if needed */
-		if(emd->facepa==0 || psmd->flag&eParticleSystemFlag_Pars || emd->flag&eExplodeFlag_CalcFaces){
+		if(emd->facepa==0
+			|| psmd->flag&eParticleSystemFlag_Pars
+			|| emd->flag&eExplodeFlag_CalcFaces
+			|| MEM_allocN_len(emd->facepa)/sizeof(int) != dm->getNumFaces(dm)){
 			if(psmd->flag & eParticleSystemFlag_Pars)
 				psmd->flag &= ~eParticleSystemFlag_Pars;
 			





More information about the Bf-blender-cvs mailing list