Files
pdfcraft/crates
Dylan M. Taylor fb4159739c fix(content): bound parser recovery work and held operands
A failed operand that reads to the end of the stream (an unterminated
array, hex string or dictionary) was retried from its next byte, so
'[[[[...' read the rest of the stream once per byte: 40 KB of '[' took
24 s in a release build. Unreadable inline-image parameters did the same
from each BI. Failed reads now share an allowance of 8 bytes per stream
byte (at least 1 MiB); past it a failed operand is skipped whole and an
unreadable inline image ends where its parameters stopped reading.

Operands with no operator were all held until one arrived; only the last
1024 or so are now kept, the rest counted as skipped.
2026-11-02 21:14:48 -05:00
..
…