From f2309ba57943eb7e5a06119b6d45d9ba3b664c8b Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 25 Feb 2014 15:44:39 +0600 Subject: Fix T38824: curve which is constrained on a hidden layer causes cycles crash Issue was caused by cycles setting scene frame which will update scene for all the layers (not just visible ones) which confuses depsgraph making objects which are needed as dependency are not really evaluated. Made it so setting frame via scene.frame_set() which check whether update need to be flushed to an invisible objects and do this if so. Not ideal solution but seems to be safest at this point. --- source/blender/blenkernel/BKE_scene.h | 1 + 1 file changed, 1 insertion(+) (limited to 'source/blender/blenkernel/BKE_scene.h') diff --git a/source/blender/blenkernel/BKE_scene.h b/source/blender/blenkernel/BKE_scene.h index 52042649dc4..a10a3f3f59f 100644 --- a/source/blender/blenkernel/BKE_scene.h +++ b/source/blender/blenkernel/BKE_scene.h @@ -117,6 +117,7 @@ void BKE_scene_frame_set(struct Scene *scene, double cfra); /* ** Scene evaluation ** */ void BKE_scene_update_tagged(struct EvaluationContext *eval_ctx, struct Main *bmain, struct Scene *sce); void BKE_scene_update_for_newframe(struct EvaluationContext *eval_ctx, struct Main *bmain, struct Scene *sce, unsigned int lay); +void BKE_scene_update_for_newframe_ex(struct EvaluationContext *eval_ctx, struct Main *bmain, struct Scene *sce, unsigned int lay, bool do_invisible_flush); struct SceneRenderLayer *BKE_scene_add_render_layer(struct Scene *sce, const char *name); bool BKE_scene_remove_render_layer(struct Main *main, struct Scene *scene, struct SceneRenderLayer *srl); -- cgit v1.2.3