diff options
Diffstat (limited to 'source/blender/nodes/intern/CMP_nodes/CMP_image.c')
-rw-r--r-- | source/blender/nodes/intern/CMP_nodes/CMP_image.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/source/blender/nodes/intern/CMP_nodes/CMP_image.c b/source/blender/nodes/intern/CMP_nodes/CMP_image.c index 5f444357776..00be52a81aa 100644 --- a/source/blender/nodes/intern/CMP_nodes/CMP_image.c +++ b/source/blender/nodes/intern/CMP_nodes/CMP_image.c @@ -350,11 +350,12 @@ void node_composit_rlayers_out(RenderData *rd, RenderLayer *rl, bNodeStack **out static void node_composit_exec_rlayers(void *data, bNode *node, bNodeStack **in, bNodeStack **out) { Scene *sce= (Scene *)node->id; + Render *re= (sce)? RE_GetRender(sce->id.name): NULL; RenderData *rd= data; RenderResult *rr= NULL; - if(sce) - rr= RE_GetResult(RE_GetRender(sce->id.name)); + if(re) + rr= RE_AcquireResultRead(re); if(rr) { SceneRenderLayer *srl= BLI_findlink(&sce->r.layers, node->custom1); @@ -389,7 +390,10 @@ static void node_composit_exec_rlayers(void *data, bNode *node, bNodeStack **in, } } } - } + } + + if(re) + RE_ReleaseResult(re); }; |