Ignore, rather than throwing on, unsupported Coding style default (COD) options in JPEG 2000 images (issue 11004)

Similar to other markers that we currently skip, by ignoring unsupported Coding style default (COD) options we'll at least render *something* here (although some JPEG 2000 images may look slightly wrong).
Note that if the unsupported COD options lead to additional errors, during parsing, we'll still abort parsing of the JPEG 2000 image.
This commit is contained in:
Jonas Jenwald 2020-12-21 20:24:13 +01:00
parent 3ea1c43b15
commit cffb7af3b0
3 changed files with 12 additions and 3 deletions

View File

@ -351,8 +351,8 @@ var JpxImage = (function JpxImageClosure() {
}
if (unsupported.length > 0) {
doNotRecover = true;
throw new Error(
"Unsupported COD options (" + unsupported.join(", ") + ")"
warn(
`JPX: Unsupported COD options (${unsupported.join(", ")}).`
);
}
if (context.mainHeader) {
@ -411,7 +411,7 @@ var JpxImage = (function JpxImageClosure() {
if (doNotRecover || this.failOnCorruptedImage) {
throw new JpxError(e.message);
} else {
warn("JPX: Trying to recover from: " + e.message);
warn(`JPX: Trying to recover from: "${e.message}".`);
}
}
this.tiles = transformComponents(context);

View File

@ -0,0 +1 @@
https://github.com/mozilla/pdf.js/files/3422968/problem.pdf

View File

@ -2051,6 +2051,14 @@
"link": true,
"type": "eq"
},
{ "id": "issue11004",
"file": "pdfs/issue11004.pdf",
"md5": "25d79508f2c9ef0e2327564966138fc1",
"rounds": 1,
"lastPage": 1,
"link": true,
"type": "eq"
},
{ "id": "issue12752",
"file": "pdfs/issue12752.pdf",
"md5": "9f8ada17a613d18919714baf684e165f",