mirror of
https://github.com/meineerde/redmine.git
synced 2025-12-19 15:01:14 +00:00
Make sure we only invoke Imagemagick if this is actually an image (#22721).
git-svn-id: http://svn.redmine.org/redmine/trunk@15362 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
fcb4e510ea
commit
bf81c96b79
1
Gemfile
1
Gemfile
@ -14,6 +14,7 @@ gem "protected_attributes"
|
|||||||
gem "actionpack-action_caching"
|
gem "actionpack-action_caching"
|
||||||
gem "actionpack-xml_parser"
|
gem "actionpack-xml_parser"
|
||||||
gem "roadie-rails"
|
gem "roadie-rails"
|
||||||
|
gem "mimemagic"
|
||||||
|
|
||||||
# Request at least nokogiri 1.6.7.2 because of security advisories
|
# Request at least nokogiri 1.6.7.2 because of security advisories
|
||||||
gem "nokogiri", ">= 1.6.7.2"
|
gem "nokogiri", ">= 1.6.7.2"
|
||||||
|
|||||||
@ -16,6 +16,7 @@
|
|||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
|
||||||
require 'fileutils'
|
require 'fileutils'
|
||||||
|
require 'mimemagic'
|
||||||
|
|
||||||
module Redmine
|
module Redmine
|
||||||
module Thumbnail
|
module Thumbnail
|
||||||
@ -27,6 +28,10 @@ module Redmine
|
|||||||
def self.generate(source, target, size)
|
def self.generate(source, target, size)
|
||||||
return nil unless convert_available?
|
return nil unless convert_available?
|
||||||
unless File.exists?(target)
|
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?)}
|
||||||
|
return nil
|
||||||
|
end
|
||||||
directory = File.dirname(target)
|
directory = File.dirname(target)
|
||||||
unless File.exists?(directory)
|
unless File.exists?(directory)
|
||||||
FileUtils.mkdir_p directory
|
FileUtils.mkdir_p directory
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user