rails/rails — pull request #14529 by rwz (2014-03-30 04:45:57+00:00)
Title: ActiveSupport::SafeBuffer#prepend inconsistency

Ruby 2.1.1

Native ruby `String#prepend` modifies instance in-place, while `ActiveSupport::SafeBuffer` returns modified version, but the initial object remains unchanged.

```ruby
a = "bar" # => "bar"
a.prepend "foo" # => "foobar"
a # => "foobar"
b = "bar".html_safe # => "bar"
b.class # => ActiveSupport::SafeBuffer
b.prepend "foo" # => "foobar"
b # => "bar", expected "foobar"
```