diff options
| author | Aymeric Augustin | 2013-11-10 10:10:28 +0100 | 
|---|---|---|
| committer | Aymeric Augustin | 2013-11-10 16:02:49 +0100 | 
| commit | f92aba225936fa768c098a8f1db51125ac1715ec (patch) | |
| tree | f853c2a91723157ad56b1765d03dcfbffd3e0b22 /debug_toolbar/middleware.py | |
| parent | 6a8526a93b60ebae214dbe0d4cbf172c311802b9 (diff) | |
| download | django-debug-toolbar-f92aba225936fa768c098a8f1db51125ac1715ec.tar.bz2 | |
Disable instrumentation for disabled panels.
This eliminates the performance overhead when a panel is disabled.
Diffstat (limited to 'debug_toolbar/middleware.py')
| -rw-r--r-- | debug_toolbar/middleware.py | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/debug_toolbar/middleware.py b/debug_toolbar/middleware.py index 4f5b9bd..80e9305 100644 --- a/debug_toolbar/middleware.py +++ b/debug_toolbar/middleware.py @@ -95,6 +95,7 @@ class DebugToolbarMiddleware(object):                  panel.enabled = panel.dom_id() not in request.COOKIES                  if not panel.enabled:                      continue +                panel.enable_instrumentation()                  panel.process_request(request)              self.__class__.debug_toolbars[threading.current_thread().ident] = toolbar @@ -130,12 +131,13 @@ class DebugToolbarMiddleware(object):                      {'redirect_to': redirect_to}                  )                  response.cookies = cookies +        for panel in toolbar.panels: +            if not panel.enabled: +                continue +            panel.process_response(request, response) +            panel.disable_instrumentation()          if ('gzip' not in response.get('Content-Encoding', '') and                  response.get('Content-Type', '').split(';')[0] in _HTML_TYPES): -            for panel in toolbar.panels: -                if not panel.enabled: -                    continue -                panel.process_response(request, response)              response.content = replace_insensitive(                  force_text(response.content, encoding=settings.DEFAULT_CHARSET),                  self.tag, | 
