summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Meyer <carl@oddbird.net>2011-09-15 07:26:35 +0000
committerCarl Meyer <carl@oddbird.net>2011-09-15 07:26:35 +0000
commitce48e8e9400c7030e5a351efde172e4bd3230966 (patch)
tree7ff0ed4e97f5fda0aa4fb6ab7e2b7318854fded8
parent2fa433ed5545c1dc7a140bd4c3b59b82ff69006b (diff)
Fixed #16848 - Adjusted SimpleTemplateResponse.__init__ to be less brittle.
Could have reverted r16830 instead, but HttpResponse shouldn't have to dance around and do non-obvious things to keep TemplateResponse happy, TemplateResponse should be robust against the possibility that HttpResponse.__init__ might set self.content. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16831 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/template/response.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/django/template/response.py b/django/template/response.py
index 7741a3e3ad..990a17b6bf 100644
--- a/django/template/response.py
+++ b/django/template/response.py
@@ -21,10 +21,6 @@ class SimpleTemplateResponse(HttpResponse):
self.template_name = template
self.context_data = context
- # _is_rendered tracks whether the template and context has been
- # baked into a final response.
- self._is_rendered = False
-
self._post_render_callbacks = []
# content argument doesn't make sense here because it will be replaced
@@ -33,6 +29,14 @@ class SimpleTemplateResponse(HttpResponse):
super(SimpleTemplateResponse, self).__init__('', mimetype, status,
content_type)
+ # _is_rendered tracks whether the template and context has been baked
+ # into a final response.
+ # Super __init__ doesn't know any better than to set self.content to
+ # the empty string we just gave it, which wrongly sets _is_rendered
+ # True, so we initialize it to False after the call to super __init__.
+ self._is_rendered = False
+
+
def __getstate__(self):
"""Pickling support function.