Browse Source

Enable loading of PDFs with invalid document information dictionaries

Jonas 12 years ago
parent
commit
d90ad429f6
  1. 10
      src/core.js
  2. 1
      test/pdfs/issue2853.pdf.link
  3. 9
      test/test_manifest.json

10
src/core.js

@ -457,9 +457,13 @@ var PDFDocument = (function PDFDocumentClosure() { @@ -457,9 +457,13 @@ var PDFDocument = (function PDFDocumentClosure() {
PDFFormatVersion: this.pdfFormatVersion,
IsAcroFormPresent: !!this.acroForm
};
if (this.xref.trailer.has('Info')) {
var infoDict = this.xref.trailer.get('Info');
var infoDict;
try {
infoDict = this.xref.trailer.get('Info');
} catch (err) {
info('The document information dictionary is invalid.');
}
if (infoDict) {
var validEntries = DocumentInfoValidators.entries;
// Only fill the document info with valid entries from the spec.
for (var key in validEntries) {

1
test/pdfs/issue2853.pdf.link

@ -0,0 +1 @@ @@ -0,0 +1 @@
http://www.celgene.de/Patienten/Newsletter-Epigenetik-201301.pdf

9
test/test_manifest.json

@ -1310,5 +1310,14 @@ @@ -1310,5 +1310,14 @@
"firstPage": 1,
"lastPage": 1,
"type": "eq"
},
{ "id": "issue2853",
"file": "pdfs/issue2853.pdf",
"md5": "9f0ad95ef0b243ee8813c4eca0f7a042",
"rounds": 1,
"link": true,
"firstPage": 1,
"lastPage": 1,
"type": "load"
}
]

Loading…
Cancel
Save