Skip to content

Some images failing to load due to different exceptions #1014

@devedse

Description

@devedse

Prerequisites

  • I have written a descriptive issue title
  • I have verified that I am running the latest version of ImageSharp
  • I have verified if the problem exist in both DEBUG and RELEASE mode
  • I have searched open and closed issues to ensure it has not already been reported

Description

Image 01.png

01

01.png
Exception happened when optimizing or comparing the image:
SixLabors.ImageSharp.ImageFormatException: Unknown filter type.
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.DecodePixelData[TPixel](Stream compressedStream, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Image 03.png

03

03.png
Exception happened when optimizing or comparing the image:
System.IO.InvalidDataException: The archive entry was compressed using an unsupported compression method.
   at System.IO.Compression.Inflater.Inflate(FlushCode flushCode)
   at System.IO.Compression.Inflater.ReadInflateOutput(Byte* bufPtr, Int32 length, FlushCode flushCode, Int32& bytesRead)
   at System.IO.Compression.Inflater.InflateVerified(Byte* bufPtr, Int32 length)
   at System.IO.Compression.DeflateStream.ReadCore(Span`1 buffer)
   at System.IO.Compression.DeflateStream.Read(Byte[] array, Int32 offset, Int32 count)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.DecodePixelData[TPixel](Stream compressedStream, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Image 03_1.png

03_1

03_1.png
Exception happened when optimizing or comparing the image:
SixLabors.ImageSharp.ImageFormatException: Invalid window size for ZLIB header: cinfo=12
   at SixLabors.ImageSharp.Formats.Png.Zlib.ZlibInflateStream.InitializeInflateStream(Boolean isCriticalChunk)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Image 05.png

05

05.png
Exception happened when optimizing or comparing the image:
SixLabors.ImageSharp.ImageFormatException: Bad method for ZLIB header: cmf=254
   at SixLabors.ImageSharp.Formats.Png.Zlib.ZlibInflateStream.InitializeInflateStream(Boolean isCriticalChunk)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Image 05_3.png

05_3

05_3.png
Exception happened when optimizing or comparing the image:
SixLabors.ImageSharp.ImageFormatException: Bad method for ZLIB header: cmf=1
   at SixLabors.ImageSharp.Formats.Png.Zlib.ZlibInflateStream.InitializeInflateStream(Boolean isCriticalChunk)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Image 08_1.png

08_1

08_1.png
Exception happened when optimizing or comparing the image:
SixLabors.ImageSharp.ImageFormatException: Invalid window size for ZLIB header: cinfo=15
   at SixLabors.ImageSharp.Formats.Png.Zlib.ZlibInflateStream.InitializeInflateStream(Boolean isCriticalChunk)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.ReadScanlines[TPixel](PngChunk chunk, ImageFrame`1 image, PngMetadata pngMetadata)
   at SixLabors.ImageSharp.Formats.Png.PngDecoderCore.Decode[TPixel](Stream stream)
   at SixLabors.ImageSharp.Image.Decode[TPixel](Stream stream, Configuration config)
   at SixLabors.ImageSharp.Image.WithSeekableStream[T](Configuration config, Stream stream, Func`2 action)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, Stream stream, IImageFormat& format)
   at SixLabors.ImageSharp.Image.Load[TPixel](Configuration config, String path)
   at DeveImageOptimizer.Helpers.ImageComparer.LoadImageHelper(String imagePath, List`1 tempFiles, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 34
   at DeveImageOptimizer.Helpers.ImageComparer.AreImagesEqual(String image1Path, String image2Path, Boolean useImageSharpBugWorkaround) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 56
   at DeveImageOptimizer.Helpers.ImageComparer.<>c__DisplayClass0_0.<AreImagesEqualAsync>b__0() in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\Helpers\ImageComparer.cs:line 20
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at DeveImageOptimizer.FileProcessing.FileOptimizerProcessor.OptimizeFile(String fileToOptimize, String originDirectory) in C:\XKanWeg\##TempImageOptimizerFailingImagesInvest\DeveImageOptimizer\DeveImageOptimizer\FileProcessing\FileOptimizerProcessor.cs:line 100

Steps to Reproduce

Call Image.Load<Rgba32>(imagePath); on the images above.

System Configuration

  • ImageSharp version: 1.0.0-dev002988
  • Other ImageSharp packages and versions: N/A
  • Environment (Operating system, version and so on): Windows 10 Enterprise
  • .NET Framework version: 4.8
  • Additional information:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions