From: Ben Darnell Date: Tue, 6 Mar 2012 05:49:41 +0000 (-0800) Subject: Fix some mutable values used as default arguments. X-Git-Tag: v2.3.0~72 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=aa7ac6906213fcae98496e5385f93414f18d9e88;p=thirdparty%2Ftornado.git Fix some mutable values used as default arguments. Also fix a doc discrepancy in which HTTPResponse.headers could be a plain dict instead of an HTTPHeaders object (for errors that returned no headers). --- diff --git a/tornado/httpclient.py b/tornado/httpclient.py index 60db3a22f..89f0057ad 100644 --- a/tornado/httpclient.py +++ b/tornado/httpclient.py @@ -330,12 +330,15 @@ class HTTPResponse(object): plus 'queue', which is the delay (if any) introduced by waiting for a slot under AsyncHTTPClient's max_clients setting. """ - def __init__(self, request, code, headers={}, buffer=None, + def __init__(self, request, code, headers=None, buffer=None, effective_url=None, error=None, request_time=None, - time_info={}): + time_info=None): self.request = request self.code = code - self.headers = headers + if headers is not None: + self.headers = headers + else: + self.headers = httputil.HTTPHeaders() self.buffer = buffer self._body = None if effective_url is None: @@ -350,7 +353,7 @@ class HTTPResponse(object): else: self.error = error self.request_time = request_time - self.time_info = time_info + self.time_info = time_info or {} def _get_body(self): if self.buffer is None: diff --git a/tornado/web.py b/tornado/web.py index 8b5d26901..a516372d5 100644 --- a/tornado/web.py +++ b/tornado/web.py @@ -1882,7 +1882,7 @@ class TemplateModule(UIModule): class URLSpec(object): """Specifies mappings between URLs and handlers.""" - def __init__(self, pattern, handler_class, kwargs={}, name=None): + def __init__(self, pattern, handler_class, kwargs=None, name=None): """Creates a URLSpec. Parameters: @@ -1906,7 +1906,7 @@ class URLSpec(object): ("groups in url regexes must either be all named or all " "positional: %r" % self.regex.pattern) self.handler_class = handler_class - self.kwargs = kwargs + self.kwargs = kwargs or {} self.name = name self._path, self._group_count = self._find_groups()