Skip to content
  • Eugen Rochko's avatar
    Fix avatar and header issues by using custom geometry detector (#6515) · a7171af0
    Eugen Rochko authored
    * Fix avatar and header issues by using custom geometry detector
    
    Revert a part of #6508. The file passed to dynamic styles method
    was not actually a file, but an instance of Paperclip::Attachment,
    which broke all styles by always returning {} from the method.
    
    One problem with GIF avatars was that Paperclip::GeometryDetector
    reported wrong dimensions for them, e.g. 120x120 GIF avatar would
    for some reason be detected as 120x53. By writing our own geometry
    parser, we can use FastImage, which also happens to be faster than
    ImageMagick, to detect image dimensions, which are also correct.
    
    Unfortunately, this PR does not implement skipping a `convert`
    entirely if the dimensions are already correct, as I found no easy
    way to write that behaviour into Paperclip without rewriting the
    Paperclip::Thumbnail class.
    
    * Only invoke convert if dimension or format needs to be changed
    a7171af0