[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31825] trunk/blender/source/blender/ editors/physics/particle_object.c: Hair disconnect/connect wasn' t working properly.

Janne Karhu jhkarh at gmail.com
Wed Sep 8 10:36:12 CEST 2010


Revision: 31825
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31825
Author:   jhk
Date:     2010-09-08 10:36:12 +0200 (Wed, 08 Sep 2010)

Log Message:
-----------
Hair disconnect/connect wasn't working properly.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/physics/particle_object.c

Modified: trunk/blender/source/blender/editors/physics/particle_object.c
===================================================================
--- trunk/blender/source/blender/editors/physics/particle_object.c	2010-09-08 08:25:38 UTC (rev 31824)
+++ trunk/blender/source/blender/editors/physics/particle_object.c	2010-09-08 08:36:12 UTC (rev 31825)
@@ -595,6 +595,7 @@
 		disconnect_hair(scene, ob, psys);
 	}
 
+	DAG_id_flush_update(&ob->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_OBJECT|ND_PARTICLE, ob);
 
 	return OPERATOR_FINISHED;
@@ -638,7 +639,8 @@
 	point=  edit ? edit->points : NULL;
 	
 	if(psmd->dm->deformedOnly)
-		dm= psmd->dm;
+		/* we don't want to mess up psmd->dm when converting to global coordinates below */
+		dm= CDDM_copy(psmd->dm);
 	else
 		dm= mesh_get_derived_deform(scene, ob, CD_MASK_BAREMESH);
 
@@ -703,8 +705,7 @@
 	}
 
 	free_bvhtree_from_mesh(&bvhtree);
-	if(!psmd->dm->deformedOnly)
-		dm->release(dm);
+	dm->release(dm);
 
 	psys_free_path_cache(psys, psys->edit);
 
@@ -734,6 +735,7 @@
 		connect_hair(scene, ob, psys);
 	}
 
+	DAG_id_flush_update(&ob->id, OB_RECALC_DATA);
 	WM_event_add_notifier(C, NC_OBJECT|ND_PARTICLE, ob);
 
 	return OPERATOR_FINISHED;





More information about the Bf-blender-cvs mailing list