From 41f6eb7560e6904ec72332049773d95fe0253bca Mon Sep 17 00:00:00 2001 From: Yannik Schmidt Date: Wed, 30 Jun 2021 16:08:14 +0200 Subject: [PATCH] return 404 error on missing file not 500 --- server.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/server.py b/server.py index dff3a40..4a09d5e 100755 --- a/server.py +++ b/server.py @@ -27,7 +27,10 @@ def generatePicture(pathToOrig, scaleX, scaleY, encoding): encoding = "jpeg" # open image # - image = PIL.Image.open(os.path.join(PICTURE_DIR, pathToOrig)) + try: + image = PIL.Image.open(os.path.join(PICTURE_DIR, pathToOrig)) + except FileNotFoundError: + return None # ensure sizes are valid # x, y = image.size @@ -74,6 +77,9 @@ def sendPicture(path): scaleX = round(float(x2)) path = generatePicture(path, scaleX, scaleY, flask.request.args.get("encoding")) + if not path: + return ("File not found", 404) + raw = flask.send_from_directory(".", path, cache_timeout=cache_timeout) response = flask.make_response(raw) response.headers['X-ATHQ-INTERNAL-FID'] = path