Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Folded django.core.handlers.modpython.populate_apache_request into Mo…

…dPythonHandler.__call__() to save the overhead of a function call, and because that logic didn't need to be abstracted.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3876 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit beeb719c12f537b60a262e9f4f4e1f8dbc7c607d 1 parent 15e7805
@adrianholovaty adrianholovaty authored
Showing with 13 additions and 16 deletions.
  1. +13 −16 django/core/handlers/modpython.py
View
29 django/core/handlers/modpython.py
@@ -160,23 +160,20 @@ def __call__(self, req):
dispatcher.send(signal=signals.request_finished)
# Convert our custom HttpResponse object back into the mod_python req.
- populate_apache_request(response, req)
- return 0 # mod_python.apache.OK
+ req.content_type = response['Content-Type']
+ for key, value in response.headers.items():
+ if key != 'Content-Type':
+ req.headers_out[key] = value
+ for c in response.cookies.values():
+ req.headers_out.add('Set-Cookie', c.output(header=''))
+ req.status = response.status_code
+ try:
+ for chunk in response:
+ req.write(chunk)
+ finally:
+ response.close()
-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']
- 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
- try:
- for chunk in http_response:
- mod_python_req.write(chunk)
- finally:
- http_response.close()
+ return 0 # mod_python.apache.OK
def handler(req):
# mod_python hooks into this function.

0 comments on commit beeb719

Please sign in to comment.
Something went wrong with that request. Please try again.