summaryrefslogtreecommitdiff
path: root/lib/gitlab/highlight.rb
diff options
context:
space:
mode:
authorMark Chao <mchao@gitlab.com>2018-09-11 12:37:44 +0800
committerMark Chao <mchao@gitlab.com>2018-10-30 15:44:55 +0800
commitbc14e4ed1024efa1e0a411bd59e1339fb1af20c0 (patch)
tree249ac6ce57b9758d3472dd4b1319527636b72f44 /lib/gitlab/highlight.rb
parent39ae9a59a59615092fbef189466f37c34f4a7fb1 (diff)
downloadgitlab-ce-bc14e4ed1024efa1e0a411bd59e1339fb1af20c0.tar.gz
Move :plain option to Highlight class
This is to DRY the repeated file size check. Move spec and constants to Highlight
Diffstat (limited to 'lib/gitlab/highlight.rb')
-rw-r--r--lib/gitlab/highlight.rb3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/gitlab/highlight.rb b/lib/gitlab/highlight.rb
index d28223194cc..a4e60bbd828 100644
--- a/lib/gitlab/highlight.rb
+++ b/lib/gitlab/highlight.rb
@@ -4,6 +4,7 @@ module Gitlab
class Highlight
TIMEOUT_BACKGROUND = 30.seconds
TIMEOUT_FOREGROUND = 3.seconds
+ MAXIMUM_TEXT_HIGHLIGHT_SIZE = 1.megabyte
def self.highlight(blob_name, blob_content, language: nil, plain: false)
new(blob_name, blob_content, language: language)
@@ -20,6 +21,8 @@ module Gitlab
end
def highlight(text, continue: true, plain: false)
+ plain ||= text.length > MAXIMUM_TEXT_HIGHLIGHT_SIZE
+
highlighted_text = highlight_text(text, continue: continue, plain: plain)
highlighted_text = link_dependencies(text, highlighted_text) if blob_name
highlighted_text