[Bf-blender-cvs] [2678b12] master: Fix T38216: Cycles render crash Blender in some scene in versions
Sergey Sharybin
noreply at git.blender.org
Wed Jan 15 11:22:31 CET 2014
Commit: 2678b12a368dee19c01b42a41e15980002f01d18
Author: Sergey Sharybin
Date: Wed Jan 15 15:48:51 2014 +0600
https://developer.blender.org/rB2678b12a368dee19c01b42a41e15980002f01d18
Fix T38216: Cycles render crash Blender in some scene in versions
Issue was caused by evaluation flags getter function polluting
the DAG. Need to use dag_find_node() instead.
Still need to doublecheck exporting objects with curve deform
works properly. On the first thought it should, but might be
wrong again.
===================================================================
M source/blender/blenkernel/intern/depsgraph.c
===================================================================
diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c
index b9cbd6d..539ed8f 100644
--- a/source/blender/blenkernel/intern/depsgraph.c
+++ b/source/blender/blenkernel/intern/depsgraph.c
@@ -2910,8 +2910,18 @@ const char *DAG_get_node_name(void *node_v)
short DAG_get_eval_flags_for_object(struct Scene *scene, void *object)
{
- DagNode *node = dag_get_node(scene->theDag, object);
- return node->eval_flags;
+ DagNode *node = dag_find_node(scene->theDag, object);
+
+ if (node) {
+ return node->eval_flags;
+ }
+ else {
+ /* Happens when external render engine exports temporary objects
+ * which are not in the DAG.
+ */
+ /* TODO(sergey): Doublecheck objects with Curve Deform exports all fine. */
+ return 0;
+ }
}
bool DAG_is_acyclic(Scene *scene)
More information about the Bf-blender-cvs
mailing list