aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2005-01-20 17:54:06 +0000
committerDavid Heinemeier Hansson <david@loudthinking.com>2005-01-20 17:54:06 +0000
commitbbd3e3966876ff76f33fee5b633004a1c636688c (patch)
treea505faea300133a6284c967b682168899af4c4ee /actionpack/lib
parent7306675fe276a7586afa8526068e4698a6d360cf (diff)
downloadrails-bbd3e3966876ff76f33fee5b633004a1c636688c.tar.gz
rails-bbd3e3966876ff76f33fee5b633004a1c636688c.tar.bz2
rails-bbd3e3966876ff76f33fee5b633004a1c636688c.zip
Fixed no-binding fragment caching
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@473 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib')
-rw-r--r--actionpack/lib/action_controller/caching.rb4
-rw-r--r--actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb8
-rw-r--r--actionpack/lib/action_view/helpers/cache_helper.rb4
3 files changed, 8 insertions, 8 deletions
diff --git a/actionpack/lib/action_controller/caching.rb b/actionpack/lib/action_controller/caching.rb
index 21d9c69831..cc5544241e 100644
--- a/actionpack/lib/action_controller/caching.rb
+++ b/actionpack/lib/action_controller/caching.rb
@@ -247,10 +247,10 @@ module ActionController #:nodoc:
end
# Called by CacheHelper#cache
- def cache_erb_fragment(name = {}, options = {}, &block)
+ def cache_erb_fragment(block, name = {}, options = {})
unless perform_caching then block.call; return end
- buffer = eval("_erbout", block)
+ buffer = eval("_erbout", block.binding)
if cache = read_fragment(name, options)
buffer.concat(cache)
diff --git a/actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb b/actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb
index b494674c91..706654e52b 100644
--- a/actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb
+++ b/actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb
@@ -16,11 +16,11 @@ class CGI #:nodoc:
end
private
- def multipart_form_boundary
- multipart_form_boundary_re = %r|\Amultipart/form-data.*boundary=\"?([^\";,]+)\"?|n # " ruby-mode
-
+ MULTIPART_FORM_BOUNDARY_RE = %r|\Amultipart/form-data.*boundary=\"?([^\";,]+)\"?|n
+
+ def multipart_form_boundary
if env_table['REQUEST_METHOD'] == 'POST'
- multipart_form_boundary_re.match(env_table['CONTENT_TYPE']).to_a.pop
+ MULTIPART_FORM_BOUNDARY_RE.match(env_table['CONTENT_TYPE']).to_a.pop
end
end
diff --git a/actionpack/lib/action_view/helpers/cache_helper.rb b/actionpack/lib/action_view/helpers/cache_helper.rb
index 9353e5a694..de2707ac75 100644
--- a/actionpack/lib/action_view/helpers/cache_helper.rb
+++ b/actionpack/lib/action_view/helpers/cache_helper.rb
@@ -2,8 +2,8 @@ module ActionView
module Helpers
# See ActionController::Caching::Fragments for usage instructions.
module CacheHelper
- def cache(name = {})
- @controller.cache_erb_fragment(binding, name) { yield }
+ def cache(name = {}, &block)
+ @controller.cache_erb_fragment(block, name)
end
end
end