Stop special-casing the dict parameter in the Jbig2Stream/JpegStream/JpxStream constructors

For all of the other `DecodeStream`s we're not passing in a `Dict`-instance manually, but instead get it from the `stream`-parameter. Hence there's no particularly good reason, as far as I can tell, to not do the same thing in `Jbig2Stream`/`JpegStream`/`JpxStream` as well.
This commit is contained in:
Jonas Jenwald 2021-04-27 22:35:53 +02:00
parent 67a1cfc1b1
commit fb0775525e
4 changed files with 9 additions and 9 deletions

View File

@ -23,12 +23,12 @@ import { shadow } from "../shared/util.js";
* the stream behaves like all the other DecodeStreams. * the stream behaves like all the other DecodeStreams.
*/ */
class Jbig2Stream extends DecodeStream { class Jbig2Stream extends DecodeStream {
constructor(stream, maybeLength, dict, params) { constructor(stream, maybeLength, params) {
super(maybeLength); super(maybeLength);
this.stream = stream; this.stream = stream;
this.dict = stream.dict;
this.maybeLength = maybeLength; this.maybeLength = maybeLength;
this.dict = dict;
this.params = params; this.params = params;
} }

View File

@ -23,7 +23,7 @@ import { shadow } from "../shared/util.js";
* like all the other DecodeStreams. * like all the other DecodeStreams.
*/ */
class JpegStream extends DecodeStream { class JpegStream extends DecodeStream {
constructor(stream, maybeLength, dict, params) { constructor(stream, maybeLength, params) {
// Some images may contain 'junk' before the SOI (start-of-image) marker. // Some images may contain 'junk' before the SOI (start-of-image) marker.
// Note: this seems to mainly affect inline images. // Note: this seems to mainly affect inline images.
let ch; let ch;
@ -37,8 +37,8 @@ class JpegStream extends DecodeStream {
super(maybeLength); super(maybeLength);
this.stream = stream; this.stream = stream;
this.dict = stream.dict;
this.maybeLength = maybeLength; this.maybeLength = maybeLength;
this.dict = dict;
this.params = params; this.params = params;
} }

View File

@ -22,12 +22,12 @@ import { shadow } from "../shared/util.js";
* the stream behaves like all the other DecodeStreams. * the stream behaves like all the other DecodeStreams.
*/ */
class JpxStream extends DecodeStream { class JpxStream extends DecodeStream {
constructor(stream, maybeLength, dict, params) { constructor(stream, maybeLength, params) {
super(maybeLength); super(maybeLength);
this.stream = stream; this.stream = stream;
this.dict = stream.dict;
this.maybeLength = maybeLength; this.maybeLength = maybeLength;
this.dict = dict;
this.params = params; this.params = params;
} }

View File

@ -765,11 +765,11 @@ class Parser {
} }
if (name === "DCTDecode" || name === "DCT") { if (name === "DCTDecode" || name === "DCT") {
xrefStreamStats[StreamType.DCT] = true; xrefStreamStats[StreamType.DCT] = true;
return new JpegStream(stream, maybeLength, stream.dict, params); return new JpegStream(stream, maybeLength, params);
} }
if (name === "JPXDecode" || name === "JPX") { if (name === "JPXDecode" || name === "JPX") {
xrefStreamStats[StreamType.JPX] = true; xrefStreamStats[StreamType.JPX] = true;
return new JpxStream(stream, maybeLength, stream.dict, params); return new JpxStream(stream, maybeLength, params);
} }
if (name === "ASCII85Decode" || name === "A85") { if (name === "ASCII85Decode" || name === "A85") {
xrefStreamStats[StreamType.A85] = true; xrefStreamStats[StreamType.A85] = true;
@ -789,7 +789,7 @@ class Parser {
} }
if (name === "JBIG2Decode") { if (name === "JBIG2Decode") {
xrefStreamStats[StreamType.JBIG] = true; xrefStreamStats[StreamType.JBIG] = true;
return new Jbig2Stream(stream, maybeLength, stream.dict, params); return new Jbig2Stream(stream, maybeLength, params);
} }
warn(`Filter "${name}" is not supported.`); warn(`Filter "${name}" is not supported.`);
return stream; return stream;