diff --git a/lib/redmine/thumbnail.rb b/lib/redmine/thumbnail.rb index 9321c7b..79eaf4a 100644 --- a/lib/redmine/thumbnail.rb +++ b/lib/redmine/thumbnail.rb @@ -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)