Affected versions of this crate did not guard against double drop while temporarily duplicating objects’ ownership using
ptr::read(). Upon panic in a user-provided function
conversion, objects that are copied by
ptr::read() are dropped twice, leading to memory corruption.
The flaw was corrected in v0.9.2 by using
ManuallyDrop<T> to enclose objects that are to be temporarily duplicated.