Browse Source

Only passthrough_errors if PROPAGATE_EXCEPTIONS

See pallets/werkzeug#954
pull/1996/head
Markus Unterwaditzer 8 years ago
parent
commit
098ea0c8ca
  1. 3
      flask/app.py
  2. 2
      flask/cli.py
  3. 4
      tests/test_basic.py

3
flask/app.py

@ -838,7 +838,8 @@ class Flask(_PackageBoundObject):
self.debug = bool(debug)
options.setdefault('use_reloader', self.debug)
options.setdefault('use_debugger', self.debug)
options.setdefault('passthrough_errors', True)
options.setdefault('passthrough_errors',
self.config['PROPAGATE_EXCEPTIONS'])
try:
run_simple(host, port, self, **options)
finally:

2
flask/cli.py

@ -430,7 +430,7 @@ def run_command(info, host, port, reload, debugger, eager_loading,
run_simple(host, port, app, use_reloader=reload,
use_debugger=debugger, threaded=with_threads,
passthrough_errors=True)
passthrough_errors=app.config['PROPAGATE_EXCEPTIONS'])
@click.command('shell', short_help='Runs a shell in the app context.')

4
tests/test_basic.py

@ -1268,8 +1268,8 @@ def test_werkzeug_passthrough_errors(monkeypatch, debug, use_debugger,
monkeypatch.setattr(werkzeug.serving, 'run_simple', run_simple_mock)
app.config['PROPAGATE_EXCEPTIONS'] = propagate_exceptions
app.run(debug=debug, use_debugger=use_debugger, use_reloader=use_reloader)
# make sure werkzeug always passes errors through
assert rv['passthrough_errors']
# make sure werkzeug passes errors through if PROPAGATE_EXCEPTIONS
assert rv['passthrough_errors'] == propagate_exceptions
def test_max_content_length():

Loading…
Cancel
Save