Bläddra i källkod

Merge pull request #116 from eero-thia/thia/close

aya: close file descriptors on Map drop.
Alessandro Decina 3 år sedan
förälder
incheckning
98b36b23bc
1 ändrade filer med 9 tillägg och 0 borttagningar
  1. 9 0
      aya/src/maps/mod.rs

+ 9 - 0
aya/src/maps/mod.rs

@@ -232,6 +232,15 @@ impl Map {
     }
 }
 
+impl Drop for Map {
+    fn drop(&mut self) {
+        // TODO: Replace this with an OwnedFd once that is stabilized.
+        if let Some(fd) = self.fd.take() {
+            unsafe { libc::close(fd) };
+        }
+    }
+}
+
 pub(crate) trait IterableMap<K: Pod, V> {
     fn map(&self) -> &Map;