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.

Reply via email to