diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-04-04 10:42:35 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-04-04 10:46:08 +0400 |
commit | 71a2ff12a81bbe2a05ae83056bcb107e211265f2 (patch) | |
tree | 6187c456e1a1a329777b68948f88fb74f1466a9f /source/blender/blenkernel/BKE_depsgraph.h | |
parent | 45b02cee471dd75d54fc74d3bd6072ac7689d205 (diff) |
Fix crash happening in DAG_pose_sort() due to threading issues
This function used ugly hack with static variable which was
preventing some type checks in DAG nodes. Using this variable
form multiple threads is not considered safe, apparently.
Solved by moving this variable inside the DAGForest structure.
so it's global for the graph now, but different graphs does not
run into conflicts.
This required passing the forest to some functions, which doesn't
look so much nice, but don't want to spend time on making this
code look beautiful because it is really to be replaced by the
new dependency graph.
This is really bad bug actually which is must go to 'a'.
Diffstat (limited to 'source/blender/blenkernel/BKE_depsgraph.h')
-rw-r--r-- | source/blender/blenkernel/BKE_depsgraph.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_depsgraph.h b/source/blender/blenkernel/BKE_depsgraph.h index 2a3459dd075..58903b76a15 100644 --- a/source/blender/blenkernel/BKE_depsgraph.h +++ b/source/blender/blenkernel/BKE_depsgraph.h @@ -157,7 +157,7 @@ void DAG_print_dependencies(struct Main *bmain, struct Scene *scene, struct Obje /* ************************ DAG querying ********************* */ struct Object *DAG_get_node_object(void *node_v); -const char *DAG_get_node_name(void *node_v); +const char *DAG_get_node_name(struct Scene *scene, void *node_v); short DAG_get_eval_flags_for_object(struct Scene *scene, void *object); bool DAG_is_acyclic(struct Scene *scene); |