]> source.dussan.org Git - redmine.git/commitdiff
Restricts the list of file types that can be thumbnailed.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Tue, 20 Dec 2016 08:52:26 +0000 (08:52 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Tue, 20 Dec 2016 08:52:26 +0000 (08:52 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@16092 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/thumbnail.rb

index 9321c7bb304b25ef86492c52af50c41167f1eb82..79eaf4ab7d7935956ab6aa7f765569ffe968a4bc 100644 (file)
@@ -23,13 +23,14 @@ module Redmine
     extend Redmine::Utils::Shell
 
     CONVERT_BIN = (Redmine::Configuration['imagemagick_convert_command'] || 'convert').freeze
+    ALLOWED_TYPES = %w(image/bmp image/gif image/jpeg image/png)
 
     # Generates a thumbnail for the source image to target
     def self.generate(source, target, size)
       return nil unless convert_available?
       unless File.exists?(target)
-        # Make sure we only invoke Imagemagick if this is actually an image
-        unless File.open(source) {|f| MimeMagic.by_magic(f).try(:image?)}
+        # Make sure we only invoke Imagemagick if the file type is allowed
+        unless File.open(source) {|f| ALLOWED_TYPES.include? MimeMagic.by_magic(f).try(:type) }
           return nil
         end
         directory = File.dirname(target)