[Pkg-javascript-commits] [pdf.js] 116/161: Fix for #3181: jbig2 encoding for number of instances greater than 1
David Prévot
taffit at moszumanska.debian.org
Sat Apr 19 14:16:36 UTC 2014
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository pdf.js.
commit 3025445cbe58efb56e8ff081da938c6decc31959
Author: Manas (prometheansacrifice) <harlequinsguitar at gmail.com>
Date: Mon Mar 24 11:05:07 2014 +0530
Fix for #3181: jbig2 encoding for number of instances greater than 1
---
src/core/jbig2.js | 28 ++++++++++++++++++++--------
1 file changed, 20 insertions(+), 8 deletions(-)
diff --git a/src/core/jbig2.js b/src/core/jbig2.js
index 23d4bd5..c3102fa 100755
--- a/src/core/jbig2.js
+++ b/src/core/jbig2.js
@@ -445,16 +445,28 @@ var Jbig2Image = (function Jbig2ImageClosure() {
// 6.5.8.2 Refinement/aggregate-coded symbol bitmap
var numberOfInstances = decodeInteger(contextCache, 'IAAI', decoder);
if (numberOfInstances > 1) {
- error('JBIG2 error: number of instances > 1 is not supported');
- }
- var symbolId = decodeIAID(contextCache, decoder, symbolCodeLength);
- var rdx = decodeInteger(contextCache, 'IARDX', decoder); // 6.4.11.3
- var rdy = decodeInteger(contextCache, 'IARDY', decoder); // 6.4.11.4
- var symbol = (symbolId < symbols.length ? symbols[symbolId] :
- newSymbols[symbolId - symbols.length]);
- bitmap = decodeRefinement(currentWidth, currentHeight,
+ bitmap = decodeTextRegion(huffman, refinement,
+ currentWidth, currentHeight, 0,
+ numberOfInstances, 1, //strip size
+ symbols.concat(newSymbols),
+ symbolCodeLength,
+ 0, //transposed
+ 0, //ds offset
+ 1, //top left 7.4.3.1.1
+ 0, //OR operator
+ huffmanTables,
+ refinementTemplateIndex, refinementAt,
+ decodingContext);
+ } else {
+ var symbolId = decodeIAID(contextCache, decoder, symbolCodeLength);
+ var rdx = decodeInteger(contextCache, 'IARDX', decoder); // 6.4.11.3
+ var rdy = decodeInteger(contextCache, 'IARDY', decoder); // 6.4.11.4
+ var symbol = (symbolId < symbols.length ? symbols[symbolId] :
+ newSymbols[symbolId - symbols.length]);
+ bitmap = decodeRefinement(currentWidth, currentHeight,
refinementTemplateIndex, symbol, rdx, rdy, false, refinementAt,
decodingContext);
+ }
} else {
// 6.5.8.1 Direct-coded symbol bitmap
bitmap = decodeBitmap(false, currentWidth, currentHeight,
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/pdf.js.git
More information about the Pkg-javascript-commits
mailing list