From 336c64aab675b5b3baec1f82b7031882412c207e Mon Sep 17 00:00:00 2001 From: Dmitry Pentin Date: Thu, 8 Jul 2021 00:04:34 +0300 Subject: [PATCH] Injected scan selectors count --- .../Formats/Jpeg/Components/Decoder/HuffmanScanDecoder.cs | 4 +--- src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs | 3 ++- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanScanDecoder.cs b/src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanScanDecoder.cs index 0ff10e2700..34eaf1500b 100644 --- a/src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanScanDecoder.cs +++ b/src/ImageSharp/Formats/Jpeg/Components/Decoder/HuffmanScanDecoder.cs @@ -26,7 +26,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components.Decoder private readonly int restartInterval; // The number of interleaved components. - private readonly int componentsLength; + public int componentsLength; // The spectral selection start. public int spectralStart; @@ -72,7 +72,6 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components.Decoder JpegFrame frame, HuffmanTable[] dcHuffmanTables, HuffmanTable[] acHuffmanTables, - int componentsLength, int restartInterval, CancellationToken cancellationToken) { @@ -83,7 +82,6 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components.Decoder this.dcHuffmanTables = dcHuffmanTables; this.acHuffmanTables = acHuffmanTables; this.components = frame.Components; - this.componentsLength = componentsLength; this.restartInterval = restartInterval; this.todo = restartInterval; this.cancellationToken = cancellationToken; diff --git a/src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs b/src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs index b2eb18941b..9cae029fe0 100644 --- a/src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs +++ b/src/ImageSharp/Formats/Jpeg/JpegDecoderCore.cs @@ -1054,10 +1054,11 @@ namespace SixLabors.ImageSharp.Formats.Jpeg this.Frame, this.dcHuffmanTables, this.acHuffmanTables, - selectorsCount, this.resetInterval, cancellationToken) { + componentsLength = selectorsCount, + spectralStart = spectralStart, spectralEnd = spectralEnd, successiveHigh = successiveApproximation >> 4,