marshal-rs/src
Laurent Valdes 8199c0d8b4 fix: clone hashmap values instead of take() to preserve shared Rc cells
`read_hashmap` was calling `.take()` on the inner Value of each key and
value RC, which drained the shared SafeCell used by the symbols/objects
tables. When a SymbolLink (`;`) referenced a symbol that later appeared
as a hashmap key, the first `take()` emptied the shared cell, and the
second usage resolved to Null.

Replacing `take()` with `clone()` keeps the symbols/objects tables
intact. Since Value derives Clone, this has negligible cost for
typical payloads.

Fixes tests in symbol_link_reuse_test.rs.
2026-04-05 11:36:38 +02:00
..
constants.rs Version 1.0.0 2025-06-29 18:38:36 +05:00
dump.rs v2.0.0: serde and documentation improvements 2025-12-04 15:24:24 +05:00
lib.rs v2.0.0: serde and documentation improvements 2025-12-04 15:24:24 +05:00
load.rs fix: clone hashmap values instead of take() to preserve shared Rc cells 2026-04-05 11:36:38 +02:00
types.rs Change # Arguments headers to # Parameters 2025-12-04 16:39:54 +05:00