mirror of
https://github.com/storytold/figcraft.git
synced 2026-10-29 21:06:50 -06:00
zune-jpeg 0.5.15, the decoder behind `image`, asserts in its upsampler on a progressive frame whose later component is sampled more finely than its first (etemesi254/zune-image#236; an 8 × 8 Y 1×1, Cb 2×2 file is enough). The panic reached everywhere such an image is decoded: the CLI died writing a thumbnail, the desktop canvas's guard caught it on every render of the page, and in the browser it aborted the tab. The fix in zune-jpeg (36007420) is in 0.5.16 pre-releases only, which `image`'s requirement doesn't take. Such a JPEG is now refused from its frame header before the decoder sees it, as an image past the byte budget is. The decoder refuses the larger ones of this shape itself, so nothing that decoded is lost; baseline frames of the same shape decode and are left to it. The check can go once zune-jpeg 0.5.16 ships. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>