From ec072bb718e79cd3ee24eab3e5d041dfb7ff6e11 Mon Sep 17 00:00:00 2001 From: Jeremy Soller <jeremy@system76.com> Date: Sun, 28 Apr 2019 13:32:43 -0600 Subject: [PATCH] Return correct error for fevent on files --- src/mount/redox/scheme.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/mount/redox/scheme.rs b/src/mount/redox/scheme.rs index 8d5dc9f..e905e39 100644 --- a/src/mount/redox/scheme.rs +++ b/src/mount/redox/scheme.rs @@ -494,6 +494,16 @@ impl<D: Disk> Scheme for FileScheme<D> { } } + fn fevent(&self, id: usize, flags: usize) -> Result<usize> { + let files = self.files.borrow_mut(); + if let Some(file) = files.get(&id) { + // EPERM is returned for files that are always readable or writable + Err(Error::new(EPERM)) + } else { + Err(Error::new(EBADF)) + } + } + fn fpath(&self, id: usize, buf: &mut [u8]) -> Result<usize> { // println!("Fpath {}, {:X} {}", id, buf.as_ptr() as usize, buf.len()); let files = self.files.borrow_mut(); -- GitLab