coldbox-platform
coldbox-platform copied to clipboard
Fix for COLDBOX-1348
Problem
After upgrading to ColdBox 7.5.2, the Renderer.cfc was calling discoverViewPaths() to locate a layout before checking if the layout name was empty. When a module had layoutParentLookup = true and called event.noLayout() (which sets the layout to an empty string), the framework tried to locate a layout with an empty name, causing the error:
The layout [] was not found in the module path: [/modules_app/akibase/layouts/]
Solution
I reorganized the code in /coldbox/system/web/Renderer.cfc:608-637 to:
- First check if the layout is empty (len( cbox_currentLayout ) eq 0)
- If empty, just render the view without any layout discovery
- Only call discoverViewPaths() when we know the layout is not empty