From 57375bd0c4168fb5600d8bdac95d57e63e2872f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Mon, 2 May 2016 13:23:52 +0200 Subject: [PATCH] Gracefully handle bad ObjectId passed on URL --- pillar/application/modules/file_storage.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pillar/application/modules/file_storage.py b/pillar/application/modules/file_storage.py index 531c85e5..dec2162f 100644 --- a/pillar/application/modules/file_storage.py +++ b/pillar/application/modules/file_storage.py @@ -445,7 +445,10 @@ def stream_to_gcs(project_id): uploaded_file = request.files['file'] projects = current_app.data.driver.db['projects'] - project = projects.find_one(ObjectId(project_id), projection={'_id': 1}) + try: + project = projects.find_one(ObjectId(project_id), projection={'_id': 1}) + except InvalidId: + project = None if not project: raise NotFound('Project %s does not exist' % project_id)