Skip to content
  • Alex Robbin's avatar
    d6197d4c
    Active Storage: raise PreviewError when a preview cannot be generated · d6197d4c
    Alex Robbin authored
    If a preview cannot be generated, the IO stream that is captured is empty, resulting in a 0-byte preview file being generated and stored in the Active Storage service.
    
    We came across this because Poppler was failing to generate previews of some PDFs, resulting in 0-byte files. Resizing those "previews" then resulted in a MiniMagick error. The MiniMagick error feels like the right end result if it's attempted on a 0-byte file, what doesn't feel right is `Previewer` proceeding normally if the child process that attempted to capture a preview exited unsuccessfully.
    
    Now, if the previewer child process exits with a non-0 status code, we raise an exception.
    d6197d4c
    Active Storage: raise PreviewError when a preview cannot be generated
    Alex Robbin authored
    If a preview cannot be generated, the IO stream that is captured is empty, resulting in a 0-byte preview file being generated and stored in the Active Storage service.
    
    We came across this because Poppler was failing to generate previews of some PDFs, resulting in 0-byte files. Resizing those "previews" then resulted in a MiniMagick error. The MiniMagick error feels like the right end result if it's attempted on a 0-byte file, what doesn't feel right is `Previewer` proceeding normally if the child process that attempted to capture a preview exited unsuccessfully.
    
    Now, if the previewer child process exits with a non-0 status code, we raise an exception.
Loading