The custom implementation of a Cell primitive in the affected versions of this crate does not keep track of mutable references to the underlying data.
This allows obtaining several mutable references to the same object which may result in arbitrary memory corruption, most likely use-after-free.
The flaw was corrected by switching from a bespoke Cell<T>
implementation to Rc<RefCell<T>>
.
{ "license": "CC0-1.0" }