aboutsummaryrefslogtreecommitdiff
path: root/vendor/backtrace/src/symbolize/gimli/mmap_unix.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/backtrace/src/symbolize/gimli/mmap_unix.rs')
-rw-r--r--vendor/backtrace/src/symbolize/gimli/mmap_unix.rs49
1 files changed, 0 insertions, 49 deletions
diff --git a/vendor/backtrace/src/symbolize/gimli/mmap_unix.rs b/vendor/backtrace/src/symbolize/gimli/mmap_unix.rs
deleted file mode 100644
index 261ffc1..0000000
--- a/vendor/backtrace/src/symbolize/gimli/mmap_unix.rs
+++ /dev/null
@@ -1,49 +0,0 @@
-use super::mystd::fs::File;
-use super::mystd::os::unix::prelude::*;
-use core::ops::Deref;
-use core::ptr;
-use core::slice;
-
-#[cfg(not(all(target_os = "linux", target_env = "gnu")))]
-use libc::mmap as mmap64;
-#[cfg(all(target_os = "linux", target_env = "gnu"))]
-use libc::mmap64;
-
-pub struct Mmap {
- ptr: *mut libc::c_void,
- len: usize,
-}
-
-impl Mmap {
- pub unsafe fn map(file: &File, len: usize) -> Option<Mmap> {
- let ptr = mmap64(
- ptr::null_mut(),
- len,
- libc::PROT_READ,
- libc::MAP_PRIVATE,
- file.as_raw_fd(),
- 0,
- );
- if ptr == libc::MAP_FAILED {
- return None;
- }
- Some(Mmap { ptr, len })
- }
-}
-
-impl Deref for Mmap {
- type Target = [u8];
-
- fn deref(&self) -> &[u8] {
- unsafe { slice::from_raw_parts(self.ptr as *const u8, self.len) }
- }
-}
-
-impl Drop for Mmap {
- fn drop(&mut self) {
- unsafe {
- let r = libc::munmap(self.ptr, self.len);
- debug_assert_eq!(r, 0);
- }
- }
-}