Fix T39547: Toggling render passes on active scene does not update
authorLukas Tönne <lukas.toenne@gmail.com>
Wed, 2 Apr 2014 08:59:35 +0000 (10:59 +0200)
committerLukas Tönne <lukas.toenne@gmail.com>
Wed, 2 Apr 2014 09:04:09 +0000 (11:04 +0200)
commit288147334ce81cf0be533c15f3698b88ef7c63f3
tree65326991ac0024dc054c2007209f9efd6e33a3ef
parenteed3974d11af6072174a43f6b103c9b64be054e2
Fix T39547: Toggling render passes on active scene does not update
render layer nodes in a pinned tree from different scene.

The way these updates work is a nasty legacy hack:
https://developer.blender.org/diffusion/B/browse/master/source/blender/nodes/composite/node_composite_tree.c$277

This function is called //very frequently// by the get_from_context
method. However, this does not get called for pinned node trees, so
when showing a different scene's compositing nodes in the editor they
may not get updated correctly.

Now moved this update call out of get_from_context so it happens in any
case. Will be called no more frequently than before (on every redraw).
Eventually the depsgraph should handle this more precisely, it's just a
simple ID dependency anyway ...
source/blender/editors/space_node/node_edit.c
source/blender/nodes/composite/node_composite_tree.c