Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed no-binding fragment caching

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@473 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
commit bbd3e3966876ff76f33fee5b633004a1c636688c 1 parent 7306675
@dhh dhh authored
View
4 actionpack/lib/action_controller/caching.rb
@@ -247,10 +247,10 @@ def self.append_features(base) #: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)
View
8 actionpack/lib/action_controller/cgi_ext/raw_post_data_fix.rb
@@ -16,11 +16,11 @@ def initialize_query()
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
View
4 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
Please sign in to comment.
Something went wrong with that request. Please try again.