Catch errors when parsing the linearization header so we can display corrupted docs
This commit is contained in:
parent
c757eedc49
commit
9de94991e9
14
src/core.js
14
src/core.js
@ -398,10 +398,16 @@ var PDFDocument = (function PDFDocumentClosure() {
|
|||||||
get linearization() {
|
get linearization() {
|
||||||
var length = this.stream.length;
|
var length = this.stream.length;
|
||||||
var linearization = false;
|
var linearization = false;
|
||||||
if (length) {
|
try {
|
||||||
linearization = new Linearization(this.stream);
|
if (length) {
|
||||||
if (linearization.length != length)
|
linearization = new Linearization(this.stream);
|
||||||
linearization = false;
|
if (linearization.length != length)
|
||||||
|
linearization = false;
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
warn('since pdf is broken pdf.js is trying to recover it ' +
|
||||||
|
'by indexing the object; ' +
|
||||||
|
'the error in firebug shall have a different origin');
|
||||||
}
|
}
|
||||||
// shadow the prototype getter with a data property
|
// shadow the prototype getter with a data property
|
||||||
return shadow(this, 'linearization', linearization);
|
return shadow(this, 'linearization', linearization);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user