Prevent getOperatorList from failing to correctly parse OPS.paintXObject for TilingPatterns that are missing some /Resources entries (issue 6541)
Fixes 6541.
This commit is contained in:
parent
738daa0f79
commit
2e751199fb
@ -286,9 +286,13 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
|
|||||||
operatorList) {
|
operatorList) {
|
||||||
// Create an IR of the pattern code.
|
// Create an IR of the pattern code.
|
||||||
var tilingOpList = new OperatorList();
|
var tilingOpList = new OperatorList();
|
||||||
return this.getOperatorList(pattern,
|
// Merge the available resources, to prevent issues when the patternDict
|
||||||
(patternDict.get('Resources') || resources), tilingOpList).
|
// is missing some /Resources entries (fixes issue6541.pdf).
|
||||||
then(function () {
|
var resourcesArray = [patternDict.get('Resources'), resources];
|
||||||
|
var patternResources = Dict.merge(this.xref, resourcesArray);
|
||||||
|
|
||||||
|
return this.getOperatorList(pattern, patternResources, tilingOpList).then(
|
||||||
|
function () {
|
||||||
// Add the dependencies to the parent operator list so they are
|
// Add the dependencies to the parent operator list so they are
|
||||||
// resolved before sub operator list is executed synchronously.
|
// resolved before sub operator list is executed synchronously.
|
||||||
operatorList.addDependencies(tilingOpList.dependencies);
|
operatorList.addDependencies(tilingOpList.dependencies);
|
||||||
|
1
test/pdfs/.gitignore
vendored
1
test/pdfs/.gitignore
vendored
@ -28,6 +28,7 @@
|
|||||||
!javauninstall-7r.pdf
|
!javauninstall-7r.pdf
|
||||||
!issue3205r.pdf
|
!issue3205r.pdf
|
||||||
!close-path-bug.pdf
|
!close-path-bug.pdf
|
||||||
|
!issue6541.pdf
|
||||||
!issue2948.pdf
|
!issue2948.pdf
|
||||||
!issue6231_1.pdf
|
!issue6231_1.pdf
|
||||||
!issue6413.pdf
|
!issue6413.pdf
|
||||||
|
204
test/pdfs/issue6541.pdf
Normal file
204
test/pdfs/issue6541.pdf
Normal file
@ -0,0 +1,204 @@
|
|||||||
|
%PDF-1.7
|
||||||
|
%âãÏÓ
|
||||||
|
1 0 obj
|
||||||
|
<<
|
||||||
|
/Kids [2 0 R]
|
||||||
|
/Count 1
|
||||||
|
/Type /Pages
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
2 0 obj
|
||||||
|
<<
|
||||||
|
/Parent 1 0 R
|
||||||
|
/Resources
|
||||||
|
<<
|
||||||
|
/ColorSpace 3 0 R
|
||||||
|
/Font 4 0 R
|
||||||
|
/XObject 5 0 R
|
||||||
|
/Pattern 6 0 R
|
||||||
|
/ProcSet [/PDF /Text]
|
||||||
|
>>
|
||||||
|
/MediaBox [0 0 595.28 841.89]
|
||||||
|
/Type /Page
|
||||||
|
/Contents 7 0 R
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
3 0 obj
|
||||||
|
<<
|
||||||
|
/R43 8 0 R
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
5 0 obj
|
||||||
|
<<
|
||||||
|
/R44 9 0 R
|
||||||
|
/R41 10 0 R
|
||||||
|
/R57 11 0 R
|
||||||
|
/R45 12 0 R
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
4 0 obj
|
||||||
|
<<
|
||||||
|
/F1 13 0 R
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
6 0 obj
|
||||||
|
<<
|
||||||
|
/R42 14 0 R
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
7 0 obj
|
||||||
|
<<
|
||||||
|
/Length 135
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
q
|
||||||
|
0.1 0 0 0.1 0 0 cm
|
||||||
|
q
|
||||||
|
0 0 5952.93 8419 re
|
||||||
|
W n
|
||||||
|
/R57 Do
|
||||||
|
q
|
||||||
|
10 0 0 10 0 0 cm
|
||||||
|
BT
|
||||||
|
/F1 20 Tf
|
||||||
|
1 0 0 1 34.016 808.15 Tm
|
||||||
|
(Issue 6541) Tj
|
||||||
|
ET
|
||||||
|
Q
|
||||||
|
Q
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
8 0 obj [/Pattern]
|
||||||
|
endobj
|
||||||
|
12 0 obj
|
||||||
|
<<
|
||||||
|
/Matrix [1 0 0 1 0 0]
|
||||||
|
/Subtype /Form
|
||||||
|
/Length 12
|
||||||
|
/FormType 1
|
||||||
|
/Type /XObject
|
||||||
|
/BBox [3916.83 5146.43 5459.14 6380.28]
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
q
|
||||||
|
/R44 Do
|
||||||
|
Q
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
9 0 obj
|
||||||
|
<<
|
||||||
|
/Matrix [1 0 0 1 0 0]
|
||||||
|
/Subtype /Form
|
||||||
|
/Length 58
|
||||||
|
/FormType 1
|
||||||
|
/Type /XObject
|
||||||
|
/BBox [3916.83 5146.43 5459.14 6380.28]
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
q
|
||||||
|
/R43 cs
|
||||||
|
/R42 scn
|
||||||
|
3916.82 5146.43 1542.32 1233.86 re
|
||||||
|
f
|
||||||
|
Q
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
10 0 obj
|
||||||
|
<<
|
||||||
|
/Matrix [1 0 0 1 0 0]
|
||||||
|
/Subtype /Form
|
||||||
|
/Length 0
|
||||||
|
/FormType 1
|
||||||
|
/Type /XObject
|
||||||
|
/BBox [0 0 5760 4610]
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
11 0 obj
|
||||||
|
<<
|
||||||
|
/Matrix [1 0 0 1 0 0]
|
||||||
|
/Subtype /Form
|
||||||
|
/Length 12
|
||||||
|
/FormType 1
|
||||||
|
/Type /XObject
|
||||||
|
/BBox [-0.13 -0.18 5952.93 8419.14]
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
q
|
||||||
|
/R45 Do
|
||||||
|
Q
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
13 0 obj
|
||||||
|
<<
|
||||||
|
/BaseFont /Times-Roman
|
||||||
|
/Subtype /Type1
|
||||||
|
/Encoding /WinAnsiEncoding
|
||||||
|
/Type /Font
|
||||||
|
>>
|
||||||
|
endobj
|
||||||
|
14 0 obj
|
||||||
|
<<
|
||||||
|
/PatternType 1
|
||||||
|
/YStep 2074
|
||||||
|
/XStep 2074
|
||||||
|
/Resources
|
||||||
|
<<
|
||||||
|
/Font
|
||||||
|
<<
|
||||||
|
/F1 13 0 R
|
||||||
|
>>
|
||||||
|
/ProcSet [/PDF]
|
||||||
|
>>
|
||||||
|
/BBox [0 0 576 461]
|
||||||
|
/Matrix [2.67763 0 0 2.67763 3917 5146]
|
||||||
|
/TilingType 1
|
||||||
|
/PaintType 1
|
||||||
|
/Length 12
|
||||||
|
/Type /Pattern
|
||||||
|
>>
|
||||||
|
stream
|
||||||
|
q
|
||||||
|
/R41 Do
|
||||||
|
Q
|
||||||
|
|
||||||
|
endstream
|
||||||
|
endobj
|
||||||
|
15 0 obj
|
||||||
|
<<
|
||||||
|
/Pages 1 0 R
|
||||||
|
/Type /Catalog
|
||||||
|
>>
|
||||||
|
endobj xref
|
||||||
|
0 16
|
||||||
|
0000000000 65535 f
|
||||||
|
0000000015 00000 n
|
||||||
|
0000000074 00000 n
|
||||||
|
0000000269 00000 n
|
||||||
|
0000000373 00000 n
|
||||||
|
0000000303 00000 n
|
||||||
|
0000000407 00000 n
|
||||||
|
0000000442 00000 n
|
||||||
|
0000000631 00000 n
|
||||||
|
0000000828 00000 n
|
||||||
|
0000001043 00000 n
|
||||||
|
0000001182 00000 n
|
||||||
|
0000000658 00000 n
|
||||||
|
0000001348 00000 n
|
||||||
|
0000001450 00000 n
|
||||||
|
0000001715 00000 n
|
||||||
|
trailer
|
||||||
|
|
||||||
|
<<
|
||||||
|
/Root 15 0 R
|
||||||
|
/Size 16
|
||||||
|
>>
|
||||||
|
startxref
|
||||||
|
1766
|
||||||
|
%%EOF
|
@ -694,6 +694,13 @@
|
|||||||
"rounds": 1,
|
"rounds": 1,
|
||||||
"type": "eq"
|
"type": "eq"
|
||||||
},
|
},
|
||||||
|
{ "id": "issue6541",
|
||||||
|
"file": "pdfs/issue6541.pdf",
|
||||||
|
"md5": "81bc5b146404207ea40f2c55301b2bb6",
|
||||||
|
"link": false,
|
||||||
|
"rounds": 1,
|
||||||
|
"type": "eq"
|
||||||
|
},
|
||||||
{ "id": "issue6231_1",
|
{ "id": "issue6231_1",
|
||||||
"file": "pdfs/issue6231_1.pdf",
|
"file": "pdfs/issue6231_1.pdf",
|
||||||
"md5": "eb13a9366a5142833a858472c68b4749",
|
"md5": "eb13a9366a5142833a858472c68b4749",
|
||||||
|
Loading…
Reference in New Issue
Block a user