diff options
| author | Daniel Boeve <djboeve@gmail.com> | 2013-09-06 18:47:08 +0000 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2013-09-09 08:47:41 -0400 |
| commit | 6dca603abb0eb164ba87657caf5cc65bca449719 (patch) | |
| tree | 19ddd94d5224a472c0c85ed4f26aeca65722c103 /django/http | |
| parent | aeed2cf3b23161f228c8b221e56ea4d8a7cf71aa (diff) | |
Fixed #20889 -- Prevented email.Header from inserting newlines
Passed large maxlinelen to email.Header to prevent newlines from being
inserted into value returned by _convert_to_charset
Thanks mjl at laubach.at for the report.
Diffstat (limited to 'django/http')
| -rw-r--r-- | django/http/response.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/django/http/response.py b/django/http/response.py index 822589fe81..5cdedeca49 100644 --- a/django/http/response.py +++ b/django/http/response.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals import datetime import time +import sys from email.header import Header try: from urllib.parse import urlparse @@ -160,7 +161,7 @@ class HttpResponseBase(six.Iterator): except UnicodeError as e: if mime_encode: # Wrapping in str() is a workaround for #12422 under Python 2. - value = str(Header(value, 'utf-8').encode()) + value = str(Header(value, 'utf-8', maxlinelen=sys.maxsize).encode()) else: e.reason += ', HTTP response headers must be in %s format' % charset raise |
