From 85f7fba723777d105345bb4d01c7a3e23cc3a270 Mon Sep 17 00:00:00 2001 From: Adrian Holovaty Date: Thu, 2 Mar 2006 14:34:37 +0000 Subject: [PATCH] magic-removal: Fixed #1445 -- Moved response middleware-handling code inside try/finally that closes DB connection git-svn-id: http://code.djangoproject.com/svn/django/branches/magic-removal@2474 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/core/handlers/modpython.py | 9 +++++---- django/core/handlers/wsgi.py | 9 +++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/django/core/handlers/modpython.py b/django/core/handlers/modpython.py index 5d4707b6e1..6061dce677 100644 --- a/django/core/handlers/modpython.py +++ b/django/core/handlers/modpython.py @@ -136,13 +136,14 @@ class ModPythonHandler(BaseHandler): try: request = ModPythonRequest(req) response = self.get_response(req.uri, request) + + # Apply response middleware + for middleware_method in self._response_middleware: + response = middleware_method(request, response) + finally: dispatcher.send(signal=signals.request_finished) - # Apply response middleware - for middleware_method in self._response_middleware: - response = middleware_method(request, response) - # Convert our custom HttpResponse object back into the mod_python req. populate_apache_request(response, req) return 0 # mod_python.apache.OK diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py index cf803eacfc..17cd971333 100644 --- a/django/core/handlers/wsgi.py +++ b/django/core/handlers/wsgi.py @@ -152,13 +152,14 @@ class WSGIHandler(BaseHandler): try: request = WSGIRequest(environ) response = self.get_response(request.path, request) + + # Apply response middleware + for middleware_method in self._response_middleware: + response = middleware_method(request, response) + finally: dispatcher.send(signal=signals.request_finished) - # Apply response middleware - for middleware_method in self._response_middleware: - response = middleware_method(request, response) - try: status_text = STATUS_CODE_TEXT[response.status_code] except KeyError: