I haven't verified it yet, but it doesn't really look like in-place methods. Do you mind open up a ticket in Github?
Thank you, Prem On Jun 13, 2011, at 11:21 AM, Simon de Boer wrote: > This problem seems to be more widespread: > xx = "safe string".html_safe > xx.underscore > xx.titlecase > xx.pluralize > > Each inflection throws the same exception. Inflections should be safe > operations...shouldn't they? > > (although xx.(upcase|downcase|dasherize) are fine) > > On Jun 9, 5:11 am, Ryan Bigg <[email protected]> wrote: >> This should also be fixed in the next release of Rails 3.0.x >> >> On 09/06/2011, at 3:21, Konstantin Shababov <[email protected]> wrote: >> >> >> >>> you can fix this using output_buffer = output_buffer.slice(pos..-1) instead >>> of using slice! >> >>> -- >>> Konstantin Shababov >>> http://github.com/etehtsea >>> Sent with Sparrow >>> On Wednesday, June 8, 2011 at 7:10 PM, Christoph Schiessl wrote: >> >>>> After upgrading from 3.0.7 to 3.0.8, I get the following error: >> >>>> activesupport (3.0.8) lib/active_support/core_ext/string/ >>>> output_safety.rb:114:in `slice!' >>>> actionpack (3.0.8) lib/action_view/helpers/cache_helper.rb:56:in >>>> `fragment_for' >>>> actionpack (3.0.8) lib/action_view/helpers/cache_helper.rb:38:in >>>> `cache' >>>> app/views/customers/index.html.erb:18:in >>>> `_app_views_customers_index_html_erb__218860319__625647498_0' >>>> ... >> >>>> As far as I can tell, the method `fragment_for` in `CacheHelper` is >>>> calling `slice!` on a `SafeBuffer` object. >> >>>> def fragment_for(name = {}, options = nil, &block) #:nodoc: >>>> if controller.fragment_exist?(name, options) >>>> controller.read_fragment(name, options) >>>> else >>>> # VIEW TODO: Make #capture usable outside of ERB >>>> # This dance is needed because Builder can't use capture >>>> pos = output_buffer.length >>>> yield >>>> fragment = output_buffer.slice!(pos..-1) ## >>>> PROBLEM >>>> controller.write_fragment(name, fragment, options) >>>> end >>>> end >> >>>> However, `slice!` is also one of the unsafe methods defined in >>>> `ActiveSupport::SafeBuffer`. Therefore an exception is thrown. >> >>>> Best regards, >>>> Christoph Schiessl >> >>>> -- >>>> You received this message because you are subscribed to the Google Groups >>>> "Ruby on Rails: Core" group. >>>> To post to this group, send email to [email protected]. >>>> To unsubscribe from this group, send email to >>>> [email protected]. >>>> For more options, visit this group >>>> athttp://groups.google.com/group/rubyonrails-core?hl=en. >> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "Ruby on Rails: Core" group. >>> To post to this group, send email to [email protected]. >>> To unsubscribe from this group, send email to >>> [email protected]. >>> For more options, visit this group >>> athttp://groups.google.com/group/rubyonrails-core?hl=en. > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Core" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-core?hl=en. > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-core?hl=en.
