Browse Source

Always trap proxy exceptions

pull/667/head
Armin Ronacher 12 years ago
parent
commit
f1537a9d7a
  1. 2
      CHANGES
  2. 8
      flask/app.py

2
CHANGES

@ -43,6 +43,8 @@ Release date to be decided.
context which makes them available in imported templates. One has to be
very careful with those though because usage outside of macros might
cause caching.
- Flask will no longer invoke the wrong error handlers if a proxy
exception is passed through.
Version 0.9
-----------

8
flask/app.py

@ -1327,8 +1327,12 @@ class Flask(_PackageBoundObject):
# ensure not to trash sys.exc_info() at that point in case someone
# wants the traceback preserved in handle_http_exception. Of course
# we cannot prevent users from trashing it themselves in a custom
# trap_http_exception method so that's their fault then.
if isinstance(e, HTTPException) and not self.trap_http_exception(e):
# trap_http_exception method so that's their fault then. Proxy
# exceptions generally must always be trapped (filtered out by
# e.code == None)
if isinstance(e, HTTPException) \
and e.code is not None \
and not self.trap_http_exception(e):
return self.handle_http_exception(e)
blueprint_handlers = ()

Loading…
Cancel
Save