diff options
| author | Rob Hudson | 2011-04-25 11:26:21 -0700 |
|---|---|---|
| committer | Rob Hudson | 2011-04-25 11:26:21 -0700 |
| commit | 930f33bfe9526cc7b917853da473a358ec5fc071 (patch) | |
| tree | 6580aaf0caf8a62d4bcf6c8bb7b2c60bfd7e73f4 /debug_toolbar/middleware.py | |
| parent | 8cb8abae8cec44909947dbe54e1ed644deeecbd6 (diff) | |
| parent | 6479ad305ab763a5eceb68c8eb0806caa6b63f77 (diff) | |
| download | django-debug-toolbar-0.8.5.tar.bz2 | |
Merge branch 'release/v0.8.5'v0.8.5
Diffstat (limited to 'debug_toolbar/middleware.py')
| -rw-r--r-- | debug_toolbar/middleware.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/debug_toolbar/middleware.py b/debug_toolbar/middleware.py index de78254..7f0f4bc 100644 --- a/debug_toolbar/middleware.py +++ b/debug_toolbar/middleware.py @@ -67,10 +67,14 @@ class DebugToolbarMiddleware(object): def process_request(self, request): if self.show_toolbar(request): if self.override_url: - original_urlconf = getattr(request, 'urlconf', settings.ROOT_URLCONF) + original_urlconf = __import__(getattr(request, 'urlconf', settings.ROOT_URLCONF), {}, {}, ['*']) debug_toolbar.urls.urlpatterns += patterns('', ('', include(original_urlconf)), ) + if hasattr(original_urlconf, 'handler404'): + debug_toolbar.urls.handler404 = original_urlconf.handler404 + if hasattr(original_urlconf, 'handler500'): + debug_toolbar.urls.handler500 = original_urlconf.handler500 self.override_url = False request.urlconf = 'debug_toolbar.urls' @@ -96,15 +100,15 @@ class DebugToolbarMiddleware(object): {'redirect_to': redirect_to} ) response.cookies = cookies - if response.status_code == 200: - for panel in self.debug_toolbars[request].panels: - panel.process_response(request, response) + if response.status_code == 200 and 'gzip' not in response.get('Content-Encoding', ''): if response['Content-Type'].split(';')[0] in _HTML_TYPES: + for panel in self.debug_toolbars[request].panels: + panel.process_response(request, response) response.content = replace_insensitive( smart_unicode(response.content), self.tag, smart_unicode(self.debug_toolbars[request].render_toolbar() + self.tag)) - if response.get('Content-Length', None): - response['Content-Length'] = len(response.content) + if response.get('Content-Length', None): + response['Content-Length'] = len(response.content) del self.debug_toolbars[request] return response |
