mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
override unsafe methods only if defined on String
This commit is contained in:
@@ -142,16 +142,18 @@ module ActiveSupport #:nodoc:
|
||||
end
|
||||
|
||||
UNSAFE_STRING_METHODS.each do |unsafe_method|
|
||||
class_eval <<-EOT, __FILE__, __LINE__ + 1
|
||||
def #{unsafe_method}(*args, &block) # def capitalize(*args, &block)
|
||||
to_str.#{unsafe_method}(*args, &block) # to_str.capitalize(*args, &block)
|
||||
end # end
|
||||
if 'String'.respond_to?(unsafe_method)
|
||||
class_eval <<-EOT, __FILE__, __LINE__ + 1
|
||||
def #{unsafe_method}(*args, &block) # def capitalize(*args, &block)
|
||||
to_str.#{unsafe_method}(*args, &block) # to_str.capitalize(*args, &block)
|
||||
end # end
|
||||
|
||||
def #{unsafe_method}!(*args) # def capitalize!(*args)
|
||||
@dirty = true # @dirty = true
|
||||
super # super
|
||||
end # end
|
||||
EOT
|
||||
def #{unsafe_method}!(*args) # def capitalize!(*args)
|
||||
@dirty = true # @dirty = true
|
||||
super # super
|
||||
end # end
|
||||
EOT
|
||||
end
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
Reference in New Issue
Block a user