diff options
author | Matt Ebb <matt@mke3.net> | 2007-08-14 08:38:31 +0400 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2007-08-14 08:38:31 +0400 |
commit | 5c1335a4a58801283c185bec8626f24edc2b3a44 (patch) | |
tree | be97d5a52bdfa663342a01c3e147886c5e94dd90 /source/blender/src/header_info.c | |
parent | 149d4ab4deac5f7affcf394091d3ee66550d9fb8 (diff) |
Fix for bug #7406 'Compositor Crash'
Previously when deleting a scene, no checks were made to see if
any render layer nodes in other scenes were referencing them,
leaving them pointing to bad memory. Now, this checks all other
scenes' nodetrees and sets pointers to the to-be-deleted scene to
NULL, which gets taken care of elsewhere.
Diffstat (limited to 'source/blender/src/header_info.c')
-rw-r--r-- | source/blender/src/header_info.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/src/header_info.c b/source/blender/src/header_info.c index 5d18dbc3b03..aee2e2c620f 100644 --- a/source/blender/src/header_info.c +++ b/source/blender/src/header_info.c @@ -106,6 +106,7 @@ #include "BSE_editipo.h" #include "BSE_filesel.h" #include "BSE_headerbuttons.h" +#include "BSE_node.h" #include "BSE_sequence.h" #include "BSE_edit.h" @@ -499,6 +500,9 @@ void do_info_buttons(unsigned short event) /* check all sequences */ clear_scene_in_allseqs(G.scene); + /* check render layer nodes in other scenes */ + clear_scene_in_nodes(G.scene); + /* al screens */ sc= G.main->screen.first; while(sc) { |