summaryrefslogtreecommitdiff
path: root/app/helpers
diff options
context:
space:
mode:
authorJacob Vosmaer <contact@jacobvosmaer.nl>2016-02-02 15:04:54 +0100
committerJacob Vosmaer <contact@jacobvosmaer.nl>2016-02-02 15:04:54 +0100
commitd3affe8bca5f5944c6819be1261cc4da7a2c9420 (patch)
tree047472310ccd89fb43a84101a6441917c461ebf1 /app/helpers
parente08aa3df905f09f1c964fb056cba922a1d6eaa85 (diff)
parent6cffcb05882b0d3c4a02f9acf21806e25ea09ec3 (diff)
downloadgitlab-ce-lazy-blobs.tar.gz
Merge remote-tracking branch 'origin/master' into lazy-blobslazy-blobs
Diffstat (limited to 'app/helpers')
-rw-r--r--app/helpers/blob_helper.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/app/helpers/blob_helper.rb b/app/helpers/blob_helper.rb
index 694c03206bd..16967927922 100644
--- a/app/helpers/blob_helper.rb
+++ b/app/helpers/blob_helper.rb
@@ -126,4 +126,16 @@ module BlobHelper
blob.size
end
end
+
+ def blob_svg?(blob)
+ blob.language && blob.language.name == 'SVG'
+ end
+
+ # SVGs can contain malicious JavaScript; only include whitelisted
+ # elements and attributes. Note that this whitelist is by no means complete
+ # and may omit some elements.
+ def sanitize_svg(blob)
+ blob.data = Loofah.scrub_fragment(blob.data, :strip).to_xml
+ blob
+ end
end