diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2018-07-14 03:56:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-14 03:56:52 +0200 |
commit | 5a6645c922a68ba4f56db5d0082cdc58bb1ac746 (patch) | |
tree | c80cf279aac9800637ab8b7fb650a32f196d32e7 /lib/paperclip | |
parent | e9b322d0a6bebe7d13a53a216482ecc364f18806 (diff) |
Fix static GIFs being saved as empty files when using local storage (#8012)
Fix #7997 Fix #6237
Diffstat (limited to 'lib/paperclip')
-rw-r--r-- | lib/paperclip/gif_transcoder.rb | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/paperclip/gif_transcoder.rb b/lib/paperclip/gif_transcoder.rb index 62787983c..cbab6fd99 100644 --- a/lib/paperclip/gif_transcoder.rb +++ b/lib/paperclip/gif_transcoder.rb @@ -5,14 +5,7 @@ module Paperclip # to convert animated gifs to webm class GifTranscoder < Paperclip::Processor def make - num_frames = identify('-format %n :file', file: file.path).to_i - - unless options[:style] == :original && num_frames > 1 - tmp_file = Paperclip::TempfileFactory.new.generate(attachment.instance.file_file_name) - tmp_file << file.read - tmp_file.flush - return tmp_file - end + return File.open(@file.path) unless needs_convert? final_file = Paperclip::Transcoder.make(file, options, attachment) @@ -22,5 +15,12 @@ module Paperclip final_file end + + private + + def needs_convert? + num_frames = identify('-format %n :file', file: file.path).to_i + options[:style] == :original && num_frames > 1 + end end end |