mirror of
https://github.com/storytold/effectcraft.git
synced 2026-11-09 18:01:35 -06:00
The page-tree walk had no visit budget and copied the inherited resources for every node; content streams were joined without a size limit; every q copied the dash array without a nesting limit; Type 3 glyphs copied their procedure and resources for every character; glyph outlines joined the text and clip paths unchecked; every tile copied the cell without charging the copies; every image placement decoded the image again; and object-stream recovery built an object before the value budget applied. Pages share one Rc per Resources dictionary and the walk stops at 100,000 visits; a page runs at most 256 MiB of content; q nests at most 4,096 deep and dash arrays keep 256 entries; Type 3 procedures are borrowed and charged by length; outlines are checked against the path limit and charged; a tiling fill is charged tiles × cell shapes; images are cached by object and fill and charged against a page pixel budget before decoding; and a recovered object longer than the values left is not built. layer_doc copies one child instead of the whole document.