Files
photocraft/crates
Higgs32584andClaude Opus 5.5 eef1638eff codecs: bound the TIFF JPEG header walk by the file length
The pre-decode SOF scan read every JPEG strip or tile from its start, so
chunks that overlap (65536 tiles over the same 512 KiB without a 0xFF)
made opening a file step through tens of billions of bytes. The walk now
takes one step per byte it steps over, from a budget of the file's length
plus 64 steps per chunk shared by every chunk and JPEGTables. Chunks that
don't overlap fit in the file's length; running out refuses the image
with InvalidImage.

A JPEG chunk with no SOF is now charged its compressed stream, which the
tiff crate copies whole before zune-jpeg reads it, and the floating-point
predictor row is charged for strips too (the tiff crate decodes a strip
row by row when it holds samples it does not return).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-05 20:05:05 -05:00
..
…
…
2026-11-03 09:23:16 +01:00