From 0b60ff01b4cf3f6cfad294c2cefe9028f6b6f5d3 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Sat, 12 Apr 2008 14:30:17 +0000 Subject: [PATCH] Fix for bug #6753: metaballs instanced by a particle system did not refresh properly, also fixed a memory leak. --- source/blender/blenkernel/intern/depsgraph.c | 2 ++ source/blender/blenkernel/intern/scene.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c index ab6cf070a80..f9687880d16 100644 --- a/source/blender/blenkernel/intern/depsgraph.c +++ b/source/blender/blenkernel/intern/depsgraph.c @@ -610,6 +610,8 @@ static void build_dag_object(DagForest *dag, DagNode *scenenode, Object *ob, int if(part->draw_as == PART_DRAW_OB && part->dup_ob) { node2 = dag_get_node(dag, part->dup_ob); dag_add_relation(dag, node, node2, DAG_RL_OB_OB); + if(part->dup_ob->type == OB_MBALL) + dag_add_relation(dag, node, node2, DAG_RL_DATA_DATA); } if(part->draw_as == PART_DRAW_GR && part->dup_group) { diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index 216ad101569..1f5b8c731e0 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -426,6 +426,9 @@ int next_object(int val, Base **base, Object **ob) duplilist= object_duplilist(G.scene, (*base)->object); dupob= duplilist->first; + + if(!dupob) + free_object_duplilist(duplilist); } } }