@@ -1743,29 +1743,22 @@ def cleaned_caller(keep = 3)
17431743 end
17441744 end
17451745
1746- # Fixes encoding issues by
1747- # * defaulting to UTF-8
1748- # * casting params to Encoding.default_external
1749- #
1750- # The latter might not be necessary if Rack handles it one day.
1751- # Keep an eye on Rack's LH #100.
1752- def force_encoding ( *args ) settings . force_encoding ( *args ) end
1753- if defined? Encoding
1754- def self . force_encoding ( data , encoding = default_encoding )
1755- return if data == settings || data . is_a? ( Tempfile )
1756- if data . respond_to? :force_encoding
1757- data . force_encoding ( encoding ) . encode!
1758- elsif data . respond_to? :each_value
1759- data . each_value { |v | force_encoding ( v , encoding ) }
1760- elsif data . respond_to? :each
1761- data . each { |v | force_encoding ( v , encoding ) }
1762- end
1763- data
1746+ # Force data to specified encoding. It defaults to settings.default_encoding
1747+ # which is UTF-8 by default
1748+ def self . force_encoding ( data , encoding = default_encoding )
1749+ return if data == settings || data . is_a? ( Tempfile )
1750+ if data . respond_to? :force_encoding
1751+ data . force_encoding ( encoding ) . encode!
1752+ elsif data . respond_to? :each_value
1753+ data . each_value { |v | force_encoding ( v , encoding ) }
1754+ elsif data . respond_to? :each
1755+ data . each { |v | force_encoding ( v , encoding ) }
17641756 end
1765- else
1766- def self . force_encoding ( data , *) data end
1757+ data
17671758 end
17681759
1760+ def force_encoding ( *args ) settings . force_encoding ( *args ) end
1761+
17691762 reset!
17701763
17711764 set :environment , ( ENV [ 'APP_ENV' ] || ENV [ 'RACK_ENV' ] || :development ) . to_sym
0 commit comments