diff options
-rw-r--r-- | actionpack/CHANGELOG | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/layout.rb | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index a99aac02a2..62276e1996 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Change layout discovery to take into account the change in semantics with File.join and nil arguments. [Marcel Molina Jr.] + * Raise a RedirectBackError if redirect_to :back is called when there's no HTTP_REFERER defined #3049 [kevin.clark@gmail.com] * Treat timestamps like datetimes for scaffolding purposes #3388 [Maik Schmidt] diff --git a/actionpack/lib/action_controller/layout.rb b/actionpack/lib/action_controller/layout.rb index 94fa4cc4ba..182a23a7d1 100644 --- a/actionpack/lib/action_controller/layout.rb +++ b/actionpack/lib/action_controller/layout.rb @@ -207,7 +207,7 @@ module ActionController #:nodoc: # Explicitly passed layout names with slashes are looked up relative to the template root, # but auto-discovered layouts derived from a nested controller will contain a slash, though be relative # to the 'layouts' directory so we have to check the file system to infer which case the layout name came from. - nested_controller = File.directory?(File.dirname(File.join(self.class.template_root, 'layouts', active_layout))) + nested_controller = File.directory?(File.dirname(File.join(self.class.template_root, 'layouts', active_layout))) if active_layout active_layout.include?('/') && !nested_controller ? active_layout : "layouts/#{active_layout}" if active_layout end |