Allow StreamsSequenceStream to skip sub-streams that are not actual Streams (issue 18973)
This extends PR 13796 to also handle the case where sub-streams contain invalid data, i.e. anything that isn't a Stream, however please note that in these cases there's no guarantee that we'll render the page "correctly". Note that Adobe Reader, i.e. the PDF reference implementation, cannot render the last page of the referenced PDF document.
This commit is contained in:
parent
93961e2802
commit
48a18585f2
@ -132,6 +132,8 @@ class DecodeStream extends BaseStream {
|
||||
|
||||
class StreamsSequenceStream extends DecodeStream {
|
||||
constructor(streams, onError = null) {
|
||||
streams = streams.filter(s => s instanceof BaseStream);
|
||||
|
||||
let maybeLength = 0;
|
||||
for (const stream of streams) {
|
||||
maybeLength +=
|
||||
|
||||
1
test/pdfs/issue18973.pdf.link
Normal file
1
test/pdfs/issue18973.pdf.link
Normal file
@ -0,0 +1 @@
|
||||
https://github.com/user-attachments/files/17550758/doc1520828609.pdf
|
||||
@ -2057,6 +2057,15 @@
|
||||
"firstPage": 3,
|
||||
"type": "eq"
|
||||
},
|
||||
{
|
||||
"id": "issue18973",
|
||||
"file": "pdfs/issue18973.pdf",
|
||||
"md5": "b9bbd312269862bf39bb2a31023a9d02",
|
||||
"link": true,
|
||||
"rounds": 1,
|
||||
"firstPage": 45,
|
||||
"type": "eq"
|
||||
},
|
||||
{
|
||||
"id": "issue9262",
|
||||
"file": "pdfs/issue9262_reduced.pdf",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user