Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Changeset 9020

Show
Ignore:
Timestamp:
03/13/08 03:22:25 (7 months ago)
Author:
rick
Message:

Fix more obscure nested parameter hash parsing bug. Closes #10797 [thomas.lee]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/actionpack/CHANGELOG

    r9016 r9020  
    11*SVN* 
     2 
     3* Fix more obscure nested parameter hash parsing bug.  #10797 [thomas.lee] 
    24 
    35* Added ActionView::Helpers::register_javascript/stylesheet_expansion to make it easier for plugin developers to inject multiple assets #10350 [lotswholetime] 
  • trunk/actionpack/lib/action_controller/request.rb

    r9010 r9020  
    683683          key = CGI.unescape(key) 
    684684          parent << (@top = {}) if top.key?(key) && parent.is_a?(Array) 
    685           return top[key] ||= value 
     685          top[key] ||= value 
     686          return top[key] 
    686687        else 
    687688          raise ArgumentError, "Don't know what to do: top is #{top.inspect}" 
  • trunk/actionpack/test/controller/request_test.rb

    r9010 r9020  
    712712    assert_equal expected, ActionController::AbstractRequest.parse_request_parameters(input) 
    713713  end 
     714 
     715  def test_parse_params_with_complex_nesting 
     716    input = { "a[][b][c][][d][]" => %w(e) } 
     717    expected = {"a" => [{"b" => {"c" => [{"d" => ["e"]}]}}]} 
     718    assert_equal expected, ActionController::AbstractRequest.parse_request_parameters(input) 
     719  end 
    714720end 
    715721