mirror of
https://github.com/Dingo-Shenanigans/ReSkate.git
synced 2026-10-27 11:57:08 +01:00
A rewrite copied a boxed value's bytes, pointers and all, but wrote the arrays and strings those pointers reach only when a field also reached them. Rewritten documents lost that data and the boxed pointers aimed at whatever moved into its place; the mod merge rewrites real documents this way. Read documents now keep their EBXD bytes, and the writer carries every array, string, instance and boxed value a boxed pointer reaches, repointed. Found by a round-trip check on bam's level root (one string and about 1,120 bytes of arrays lost).