From 6ae3232eda16632edd253bee04144ae2d82d51b6 Mon Sep 17 00:00:00 2001 From: Omar Emara Date: Fri, 4 Oct 2024 14:25:31 +0200 Subject: [PATCH] Fix #126565: Render region corrupt compositor output Activating render region while using the CPU compositor produces corrupt output for areas outside of the region when using the File Output node. That's because the Full Frame compositor ignored nodes' render_border flag, so the areas of interest of nodes that didn't consider render border like the File Output were corrupt, producing uninitialized outputs. To fix this, we just consider the render_border flag when determining output areas for output nodes in the Full Frame compositor. Pull Request: https://projects.blender.org/blender/blender/pulls/128546 --- .../blender/compositor/intern/COM_FullFrameExecutionModel.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc b/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc index 962bbcc7dcd..69c5696166e 100644 --- a/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc +++ b/source/blender/compositor/intern/COM_FullFrameExecutionModel.cc @@ -257,7 +257,8 @@ void FullFrameExecutionModel::get_output_render_area(NodeOperation *output_op, r const bool has_viewer_border = border_.use_viewer_border && (output_op->get_flags().is_viewer_operation || output_op->get_flags().is_preview_operation); - const bool has_render_border = border_.use_render_border; + const bool has_render_border = border_.use_render_border && + output_op->get_flags().use_render_border; if (has_viewer_border || has_render_border) { /* Get border with normalized coordinates. */ const rctf *norm_border = has_viewer_border ? border_.viewer_border : border_.render_border;