ptr: *mut NABufferData<T>,
}
+unsafe impl<T> Sync for NABufferRef<T> {}
+unsafe impl<T> Send for NABufferRef<T> {}
+
impl<T> NABufferRef<T> {
pub fn new(val: T) -> Self {
let bdata = NABufferData::new(val);
fn drop(&mut self) {
unsafe {
if NABufferData::dec_refs(self.ptr.as_mut().unwrap()) {
- std::ptr::drop_in_place(self.ptr);
+ let data = Box::from_raw(self.ptr);
+ std::mem::drop(data);
}
}
}