Blender Git Commit Log
Git Commits -> Revision 0d7bd0f
Revision 0d7bd0f by Lukas Toenne (master) October 19, 2011, 17:08 (GMT) |
Adds an update flag to the bNode struct (similar to bNodeTree->update). This prevents access to non-existent typeinfo during type initialization, when node types have been removed and such nodes are deleted from older files. All blenkernel functions now only set the node->update flag instead of directly calling the update function. All operators, etc. calling blenkernel functions to modify nodes should make a ntreeUpdate call afterward (they already did that anyway). Editor/RNA/renderer/etc. high-level functions still can do immediate updates by using nodeUpdate and nodeUpdateID (replacing NodeTagChanged/NodeTagIDChanged respectively). These old functions were previously used only for setting compositor node needexec flags and clearing cached data, but have become generic update functions that require type-specific functionality (i.e. a valid typeinfo struct). |
Commit Details:
Full Hash: 0d7bd0f9b63db4c7891137d18ae6a40e652e190f
SVN Revision: 41115
Parent Commit: 408a2c6
Lines Changed: +92, -64
15 Modified Paths:
/source/blender/blenkernel/BKE_node.h (+3, -4) (Diff)
/source/blender/blenkernel/intern/depsgraph.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/image.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/node.c (+30, -22) (Diff)
/source/blender/editors/render/render_internal.c (+2, -2) (Diff)
/source/blender/editors/space_node/node_draw.c (+2, -2) (Diff)
/source/blender/editors/space_node/node_edit.c (+11, -11) (Diff)
/source/blender/editors/space_node/space_node.c (+2, -2) (Diff)
/source/blender/makesdna/DNA_node_types.h (+10, -1) (Diff)
/source/blender/makesrna/intern/rna_nodetree.c (+2, -2) (Diff)
/source/blender/nodes/composite/node_composite_tree.c (+16, -11) (Diff)
/source/blender/nodes/intern/node_common.c (+4, -2) (Diff)
/source/blender/nodes/shader/node_shader_tree.c (+6, -1) (Diff)
/source/blender/nodes/texture/node_texture_tree.c (+1, -1) (Diff)
/source/blender/render/intern/source/pipeline.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/depsgraph.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/image.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/node.c (+30, -22) (Diff)
/source/blender/editors/render/render_internal.c (+2, -2) (Diff)
/source/blender/editors/space_node/node_draw.c (+2, -2) (Diff)
/source/blender/editors/space_node/node_edit.c (+11, -11) (Diff)
/source/blender/editors/space_node/space_node.c (+2, -2) (Diff)
/source/blender/makesdna/DNA_node_types.h (+10, -1) (Diff)
/source/blender/makesrna/intern/rna_nodetree.c (+2, -2) (Diff)
/source/blender/nodes/composite/node_composite_tree.c (+16, -11) (Diff)
/source/blender/nodes/intern/node_common.c (+4, -2) (Diff)
/source/blender/nodes/shader/node_shader_tree.c (+6, -1) (Diff)
/source/blender/nodes/texture/node_texture_tree.c (+1, -1) (Diff)
/source/blender/render/intern/source/pipeline.c (+1, -1) (Diff)