diff --git a/bower.json b/bower.json index ce54ea606..50c96ac8d 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "pdfjs-dist", - "version": "1.0.402", + "version": "1.0.406", "keywords": [ "Mozilla", "pdf", diff --git a/build/pdf.combined.js b/build/pdf.combined.js index 73091c892..e56c607e1 100644 --- a/build/pdf.combined.js +++ b/build/pdf.combined.js @@ -21,8 +21,8 @@ if (typeof PDFJS === 'undefined') { (typeof window !== 'undefined' ? window : this).PDFJS = {}; } -PDFJS.version = '1.0.402'; -PDFJS.build = 'b557b87'; +PDFJS.version = '1.0.406'; +PDFJS.build = 'c0a6b0f'; (function pdfjsWrapper() { // Use strict in our context only - users might not want it @@ -9051,15 +9051,7 @@ var XRef = (function XRefClosure() { error('bad XRef entry'); } if (this.encrypt && !suppressEncryption) { - try { - xrefEntry = parser.getObj(this.encrypt.createCipherTransform(num, - gen)); - } catch (ex) { - // Almost all streams must be encrypted, but sometimes - // they are not, probably due to some broken generators. - // Retrying without encryption... - return this.fetch(ref, true); - } + xrefEntry = parser.getObj(this.encrypt.createCipherTransform(num, gen)); } else { xrefEntry = parser.getObj(); } @@ -40556,58 +40548,66 @@ var Parser = (function ParserClosure() { if (stream.dict.get('Length') === 0) { return new NullStream(stream); } - var xrefStreamStats = this.xref.stats.streamTypes; - if (name == 'FlateDecode' || name == 'Fl') { - xrefStreamStats[StreamType.FLATE] = true; - if (params) { - return new PredictorStream(new FlateStream(stream, maybeLength), - maybeLength, params); - } - return new FlateStream(stream, maybeLength); - } - if (name == 'LZWDecode' || name == 'LZW') { - xrefStreamStats[StreamType.LZW] = true; - var earlyChange = 1; - if (params) { - if (params.has('EarlyChange')) { - earlyChange = params.get('EarlyChange'); + try { + var xrefStreamStats = this.xref.stats.streamTypes; + if (name == 'FlateDecode' || name == 'Fl') { + xrefStreamStats[StreamType.FLATE] = true; + if (params) { + return new PredictorStream(new FlateStream(stream, maybeLength), + maybeLength, params); + } + return new FlateStream(stream, maybeLength); + } + if (name == 'LZWDecode' || name == 'LZW') { + xrefStreamStats[StreamType.LZW] = true; + var earlyChange = 1; + if (params) { + if (params.has('EarlyChange')) { + earlyChange = params.get('EarlyChange'); + } + return new PredictorStream( + new LZWStream(stream, maybeLength, earlyChange), + maybeLength, params); } - return new PredictorStream( - new LZWStream(stream, maybeLength, earlyChange), - maybeLength, params); + return new LZWStream(stream, maybeLength, earlyChange); } - return new LZWStream(stream, maybeLength, earlyChange); - } - if (name == 'DCTDecode' || name == 'DCT') { - xrefStreamStats[StreamType.DCT] = true; - return new JpegStream(stream, maybeLength, stream.dict, this.xref); - } - if (name == 'JPXDecode' || name == 'JPX') { - xrefStreamStats[StreamType.JPX] = true; - return new JpxStream(stream, maybeLength, stream.dict); - } - if (name == 'ASCII85Decode' || name == 'A85') { - xrefStreamStats[StreamType.A85] = true; - return new Ascii85Stream(stream, maybeLength); - } - if (name == 'ASCIIHexDecode' || name == 'AHx') { - xrefStreamStats[StreamType.AHX] = true; - return new AsciiHexStream(stream, maybeLength); - } - if (name == 'CCITTFaxDecode' || name == 'CCF') { - xrefStreamStats[StreamType.CCF] = true; - return new CCITTFaxStream(stream, maybeLength, params); - } - if (name == 'RunLengthDecode' || name == 'RL') { - xrefStreamStats[StreamType.RL] = true; - return new RunLengthStream(stream, maybeLength); - } - if (name == 'JBIG2Decode') { - xrefStreamStats[StreamType.JBIG] = true; - return new Jbig2Stream(stream, maybeLength, stream.dict); + if (name == 'DCTDecode' || name == 'DCT') { + xrefStreamStats[StreamType.DCT] = true; + return new JpegStream(stream, maybeLength, stream.dict, this.xref); + } + if (name == 'JPXDecode' || name == 'JPX') { + xrefStreamStats[StreamType.JPX] = true; + return new JpxStream(stream, maybeLength, stream.dict); + } + if (name == 'ASCII85Decode' || name == 'A85') { + xrefStreamStats[StreamType.A85] = true; + return new Ascii85Stream(stream, maybeLength); + } + if (name == 'ASCIIHexDecode' || name == 'AHx') { + xrefStreamStats[StreamType.AHX] = true; + return new AsciiHexStream(stream, maybeLength); + } + if (name == 'CCITTFaxDecode' || name == 'CCF') { + xrefStreamStats[StreamType.CCF] = true; + return new CCITTFaxStream(stream, maybeLength, params); + } + if (name == 'RunLengthDecode' || name == 'RL') { + xrefStreamStats[StreamType.RL] = true; + return new RunLengthStream(stream, maybeLength); + } + if (name == 'JBIG2Decode') { + xrefStreamStats[StreamType.JBIG] = true; + return new Jbig2Stream(stream, maybeLength, stream.dict); + } + warn('filter "' + name + '" not supported yet'); + return stream; + } catch (ex) { + if (ex instanceof MissingDataException) { + throw ex; + } + warn('Invalid stream: \"' + ex + '\"'); + return new NullStream(stream); } - warn('filter "' + name + '" not supported yet'); - return stream; } }; diff --git a/build/pdf.js b/build/pdf.js index 20b320bb1..0e75d58cd 100644 --- a/build/pdf.js +++ b/build/pdf.js @@ -21,8 +21,8 @@ if (typeof PDFJS === 'undefined') { (typeof window !== 'undefined' ? window : this).PDFJS = {}; } -PDFJS.version = '1.0.402'; -PDFJS.build = 'b557b87'; +PDFJS.version = '1.0.406'; +PDFJS.build = 'c0a6b0f'; (function pdfjsWrapper() { // Use strict in our context only - users might not want it diff --git a/build/pdf.worker.js b/build/pdf.worker.js index 5374a4631..bf4f8a19b 100644 --- a/build/pdf.worker.js +++ b/build/pdf.worker.js @@ -21,8 +21,8 @@ if (typeof PDFJS === 'undefined') { (typeof window !== 'undefined' ? window : this).PDFJS = {}; } -PDFJS.version = '1.0.402'; -PDFJS.build = 'b557b87'; +PDFJS.version = '1.0.406'; +PDFJS.build = 'c0a6b0f'; (function pdfjsWrapper() { // Use strict in our context only - users might not want it @@ -4215,15 +4215,7 @@ var XRef = (function XRefClosure() { error('bad XRef entry'); } if (this.encrypt && !suppressEncryption) { - try { - xrefEntry = parser.getObj(this.encrypt.createCipherTransform(num, - gen)); - } catch (ex) { - // Almost all streams must be encrypted, but sometimes - // they are not, probably due to some broken generators. - // Retrying without encryption... - return this.fetch(ref, true); - } + xrefEntry = parser.getObj(this.encrypt.createCipherTransform(num, gen)); } else { xrefEntry = parser.getObj(); } @@ -35720,58 +35712,66 @@ var Parser = (function ParserClosure() { if (stream.dict.get('Length') === 0) { return new NullStream(stream); } - var xrefStreamStats = this.xref.stats.streamTypes; - if (name == 'FlateDecode' || name == 'Fl') { - xrefStreamStats[StreamType.FLATE] = true; - if (params) { - return new PredictorStream(new FlateStream(stream, maybeLength), - maybeLength, params); - } - return new FlateStream(stream, maybeLength); - } - if (name == 'LZWDecode' || name == 'LZW') { - xrefStreamStats[StreamType.LZW] = true; - var earlyChange = 1; - if (params) { - if (params.has('EarlyChange')) { - earlyChange = params.get('EarlyChange'); + try { + var xrefStreamStats = this.xref.stats.streamTypes; + if (name == 'FlateDecode' || name == 'Fl') { + xrefStreamStats[StreamType.FLATE] = true; + if (params) { + return new PredictorStream(new FlateStream(stream, maybeLength), + maybeLength, params); + } + return new FlateStream(stream, maybeLength); + } + if (name == 'LZWDecode' || name == 'LZW') { + xrefStreamStats[StreamType.LZW] = true; + var earlyChange = 1; + if (params) { + if (params.has('EarlyChange')) { + earlyChange = params.get('EarlyChange'); + } + return new PredictorStream( + new LZWStream(stream, maybeLength, earlyChange), + maybeLength, params); } - return new PredictorStream( - new LZWStream(stream, maybeLength, earlyChange), - maybeLength, params); + return new LZWStream(stream, maybeLength, earlyChange); } - return new LZWStream(stream, maybeLength, earlyChange); - } - if (name == 'DCTDecode' || name == 'DCT') { - xrefStreamStats[StreamType.DCT] = true; - return new JpegStream(stream, maybeLength, stream.dict, this.xref); - } - if (name == 'JPXDecode' || name == 'JPX') { - xrefStreamStats[StreamType.JPX] = true; - return new JpxStream(stream, maybeLength, stream.dict); - } - if (name == 'ASCII85Decode' || name == 'A85') { - xrefStreamStats[StreamType.A85] = true; - return new Ascii85Stream(stream, maybeLength); - } - if (name == 'ASCIIHexDecode' || name == 'AHx') { - xrefStreamStats[StreamType.AHX] = true; - return new AsciiHexStream(stream, maybeLength); - } - if (name == 'CCITTFaxDecode' || name == 'CCF') { - xrefStreamStats[StreamType.CCF] = true; - return new CCITTFaxStream(stream, maybeLength, params); - } - if (name == 'RunLengthDecode' || name == 'RL') { - xrefStreamStats[StreamType.RL] = true; - return new RunLengthStream(stream, maybeLength); - } - if (name == 'JBIG2Decode') { - xrefStreamStats[StreamType.JBIG] = true; - return new Jbig2Stream(stream, maybeLength, stream.dict); + if (name == 'DCTDecode' || name == 'DCT') { + xrefStreamStats[StreamType.DCT] = true; + return new JpegStream(stream, maybeLength, stream.dict, this.xref); + } + if (name == 'JPXDecode' || name == 'JPX') { + xrefStreamStats[StreamType.JPX] = true; + return new JpxStream(stream, maybeLength, stream.dict); + } + if (name == 'ASCII85Decode' || name == 'A85') { + xrefStreamStats[StreamType.A85] = true; + return new Ascii85Stream(stream, maybeLength); + } + if (name == 'ASCIIHexDecode' || name == 'AHx') { + xrefStreamStats[StreamType.AHX] = true; + return new AsciiHexStream(stream, maybeLength); + } + if (name == 'CCITTFaxDecode' || name == 'CCF') { + xrefStreamStats[StreamType.CCF] = true; + return new CCITTFaxStream(stream, maybeLength, params); + } + if (name == 'RunLengthDecode' || name == 'RL') { + xrefStreamStats[StreamType.RL] = true; + return new RunLengthStream(stream, maybeLength); + } + if (name == 'JBIG2Decode') { + xrefStreamStats[StreamType.JBIG] = true; + return new Jbig2Stream(stream, maybeLength, stream.dict); + } + warn('filter "' + name + '" not supported yet'); + return stream; + } catch (ex) { + if (ex instanceof MissingDataException) { + throw ex; + } + warn('Invalid stream: \"' + ex + '\"'); + return new NullStream(stream); } - warn('filter "' + name + '" not supported yet'); - return stream; } }; diff --git a/package.json b/package.json index e7e7a51d4..7733aa88e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pdfjs-dist", - "version": "1.0.402", + "version": "1.0.406", "description": "Generic build of Mozilla's PDF.js library.", "keywords": [ "Mozilla",