mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-25 10:27:07 -06:00
- store: `max_blob_bytes as u64 + 1` overflowed for usize::MAX (debug panic; release take(0), so every blob failed). The blob read and the tile decode now share decompress_bounded(), which saturates. - zip: ZipReader::read sliced `data_offset..data_offset + compressed` unchecked although Entry is pub + Clone; a foreign entry is now a Corrupt error. - store: Collect::tile reuses tile_le(); Object::content() gives the stored bytes once (existing_object_is_valid no longer builds them twice). Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Brandon Thomas <echelon@gmail.com>