summaryrefslogtreecommitdiff
path: root/app/controllers/concerns
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2018-02-22 16:09:11 +0000
committerSean McGivern <sean@mcgivern.me.uk>2018-02-22 16:09:11 +0000
commit05f4788eab747d2529ebf2b7a3dd3e1ee2385fa3 (patch)
tree8b3c072c3779247eaca15481c2a74d8fb18f4a5a /app/controllers/concerns
parent2d004982475180c84e1e0f83ede3e6569192ec74 (diff)
parent028562a049f6b5738731be9bedb2b2d9da1b575d (diff)
downloadgitlab-ce-05f4788eab747d2529ebf2b7a3dd3e1ee2385fa3.tar.gz
Merge branch 'fix-500-for-invalid-upload-path' into 'master'
Fix 500 error when loading an invalid upload URL Closes gitlab-ee#4998 See merge request gitlab-org/gitlab-ce!17267
Diffstat (limited to 'app/controllers/concerns')
-rw-r--r--app/controllers/concerns/uploads_actions.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/app/controllers/concerns/uploads_actions.rb b/app/controllers/concerns/uploads_actions.rb
index 7ad79a1e56c..3dbfabcae8a 100644
--- a/app/controllers/concerns/uploads_actions.rb
+++ b/app/controllers/concerns/uploads_actions.rb
@@ -24,7 +24,7 @@ module UploadsActions
# - or redirect to its URL
#
def show
- return render_404 unless uploader.exists?
+ return render_404 unless uploader&.exists?
if uploader.file_storage?
disposition = uploader.image_or_video? ? 'inline' : 'attachment'
@@ -71,6 +71,9 @@ module UploadsActions
def build_uploader_from_params
uploader = uploader_class.new(model, secret: params[:secret])
+
+ return nil unless uploader.model_valid?
+
uploader.retrieve_from_store!(params[:filename])
uploader
end