From 4ad5aa9a39a83863331a7665407dac475855765b Mon Sep 17 00:00:00 2001 From: Ryan Bates Date: Tue, 28 Oct 2008 17:31:33 -0500 Subject: Ensure @content_for_* is checked before yielding to block in render :layout [#8994 state:resolved] Signed-off-by: Joshua Peek --- actionpack/lib/action_view/renderable.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'actionpack/lib/action_view') diff --git a/actionpack/lib/action_view/renderable.rb b/actionpack/lib/action_view/renderable.rb index 3d4dc6d522..c23b8cde89 100644 --- a/actionpack/lib/action_view/renderable.rb +++ b/actionpack/lib/action_view/renderable.rb @@ -36,7 +36,7 @@ module ActionView result = view.send(method_name(local_assigns), local_assigns) do |*names| ivar = :@_proc_for_layout - if view.instance_variable_defined?(ivar) and proc = view.instance_variable_get(ivar) + if !view.instance_variable_defined?(:"@content_for_#{names.first}") && view.instance_variable_defined?(ivar) && (proc = view.instance_variable_get(ivar)) view.capture(*names, &proc) elsif view.instance_variable_defined?(ivar = :"@content_for_#{names.first || :layout}") view.instance_variable_get(ivar) -- cgit v1.2.3