From 8ac1d8a4eafe4988ae6c6049bb0ebd40381e46ae Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Mon, 24 Dec 2012 13:33:47 +0000 Subject: Fix #33650: Compositor locks up when input is an unrendered render layer. Issue was caused by resolution detecting which assumed zero resolution is undefined one and should be re-evaluated. It doesn't work in cases when there's a missing input, causing lots of unneeded resolution re-calculation. It wasn't so much issue in average sized node trees, but it was a real problem in generated tree from the report. Currently used pretty simple solution which added a boolean flag to the node operation which signal whether resolution was ever set or not. There're probably smarter solutions here but can not think about them. --- source/blender/compositor/intern/COM_NodeOperation.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'source/blender/compositor/intern/COM_NodeOperation.cpp') diff --git a/source/blender/compositor/intern/COM_NodeOperation.cpp b/source/blender/compositor/intern/COM_NodeOperation.cpp index a05c37e1b09..d33b8085022 100644 --- a/source/blender/compositor/intern/COM_NodeOperation.cpp +++ b/source/blender/compositor/intern/COM_NodeOperation.cpp @@ -34,6 +34,7 @@ NodeOperation::NodeOperation() : NodeBase() this->m_complex = false; this->m_width = 0; this->m_height = 0; + this->m_isResolutionSet = false; this->m_openCL = false; this->m_btree = NULL; } -- cgit v1.2.3