Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2018-12-31 16:42:54 +0300
committerSean McGivern <sean@gitlab.com>2018-12-31 16:42:54 +0300
commitca14b70d5201852751d79d6a0827b81689fff5be (patch)
tree63f8f322f9bdbb2f288c48676eb16b5906399cdf /lib
parenta352a95e9a4e6e925e43e1b0a3dc2cac6d33cef4 (diff)
parent2cd47bba9a4ee1b503b37c548826ef527c4e49ba (diff)
Merge branch 'fj-55781-fix-api-blob-content-disposition' into 'master'
Fixed content-disposition in blob and files API endpoint Closes #55781 See merge request gitlab-org/gitlab-ce!24078
Diffstat (limited to 'lib')
-rw-r--r--lib/api/helpers.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/api/helpers.rb b/lib/api/helpers.rb
index c3eca713712..6c1a730935a 100644
--- a/lib/api/helpers.rb
+++ b/lib/api/helpers.rb
@@ -496,7 +496,7 @@ module API
def send_git_blob(repository, blob)
env['api.format'] = :txt
content_type 'text/plain'
- header['Content-Disposition'] = "attachment; filename=#{blob.name.inspect}"
+ header['Content-Disposition'] = content_disposition('attachment', blob.name)
header(*Gitlab::Workhorse.send_git_blob(repository, blob))
end
@@ -529,5 +529,11 @@ module API
params[:archived]
end
+
+ def content_disposition(disposition, filename)
+ disposition += %(; filename=#{filename.inspect}) if filename.present?
+
+ disposition
+ end
end
end