Add drop to safely deallocate memory

This commit is contained in:
guillaume didier 2020-04-03 11:30:56 +02:00
parent 811842e142
commit b7b6c8e9cc

View File

@ -1,5 +1,6 @@
#![cfg(feature = "std")]
use core::ffi::c_void;
use core::ptr::null_mut;
use core::slice::{from_raw_parts, from_raw_parts_mut};
use nix::sys::mman;
@ -43,3 +44,11 @@ impl MMappedMemory {
unsafe { from_raw_parts_mut(self.pointer, self.size) }
}
}
impl Drop for MMappedMemory {
fn drop(&mut self) {
unsafe {
mman::munmap(self.pointer as *mut c_void, self.size).unwrap();
}
}
}