From d22e88898fdd4d60d481e17f726d5b134ddc1daf Mon Sep 17 00:00:00 2001 From: Adrian Holovaty Date: Mon, 15 Aug 2005 22:47:41 +0000 Subject: [PATCH] Changed handlers (both mod_python and WSGI) to support setting multiple cookies per request git-svn-id: http://code.djangoproject.com/svn/django/trunk@511 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/core/handlers/modpython.py | 4 ++-- django/core/handlers/wsgi.py | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/django/core/handlers/modpython.py b/django/core/handlers/modpython.py index fafbd10598..d7d7c768b1 100644 --- a/django/core/handlers/modpython.py +++ b/django/core/handlers/modpython.py @@ -164,11 +164,11 @@ class ModPythonHandler(BaseHandler): def populate_apache_request(http_response, mod_python_req): "Populates the mod_python request object with an HttpResponse" mod_python_req.content_type = http_response['Content-Type'] or httpwrappers.DEFAULT_MIME_TYPE - if http_response.cookies: - mod_python_req.headers_out['Set-Cookie'] = http_response.cookies.output(header='') for key, value in http_response.headers.items(): if key != 'Content-Type': mod_python_req.headers_out[key] = value + for c in http_response.cookies.values(): + mod_python_req.headers_out.add('Set-Cookie', c.output(header='')) mod_python_req.status = http_response.status_code mod_python_req.write(http_response.get_content_as_string('utf-8')) diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py index b57c48040e..5e39dc152a 100644 --- a/django/core/handlers/wsgi.py +++ b/django/core/handlers/wsgi.py @@ -138,9 +138,9 @@ class WSGIHandler(BaseHandler): except KeyError: status_text = 'UNKNOWN STATUS CODE' status = '%s %s' % (response.status_code, status_text) - response_headers = response.headers - if response.cookies: - response_headers['Set-Cookie'] = response.cookies.output(header='') + response_headers = response.headers.items() + for c in response.cookies.values(): + response_headers.append(('Set-Cookie', c.output(header=''))) output = [response.get_content_as_string('utf-8')] - start_response(status, response_headers.items()) + start_response(status, response_headers) return output