r3771 breaks calls to exposed methods when Identity is on and there are repeated parameters (aka list parameters), like:
http://localhost:8080/test?foo=1&foo=2
Here is the traceback:
Traceback (most recent call last):
File "c:\python25\lib\site-packages\cherrypy-2.2.1-py2.5.egg\cherrypy\_cphttptools.py", line 103, in _run
applyFilters('before_main')
File "c:\python25\lib\site-packages\cherrypy-2.2.1-py2.5.egg\cherrypy\filters\__init__.py", line 151, in applyFilters
method()
File "c:\turbogears1.0\turbogears\visit\api.py", line 223, in before_main
cherrypy.request.params = encode_utf8(cherrypy.request.params)
File "c:\turbogears1.0\turbogears\visit\api.py", line 184, in encode_utf8
res[k] = encode_utf8(v)
File "c:\turbogears1.0\turbogears\visit\api.py", line 187, in encode_utf8
res[k] = v.encode('utf-8')
AttributeError: 'list' object has no attribute 'encode'