Skip to content

Commit 3fbd376

Browse files
committed
workaround: avoid regression on nightly
See rust-lang/rust#66757
1 parent 5f57c2e commit 3fbd376

File tree

2 files changed

+23
-24
lines changed

2 files changed

+23
-24
lines changed

polyfuse-tokio/src/server.rs

-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ use libc::c_int;
1111
use polyfuse::{request::BytesBuffer, Filesystem, Session, SessionInitializer};
1212
use std::{ffi::OsStr, io, path::Path, pin::Pin, sync::Arc};
1313
use tokio::signal::unix::{signal, SignalKind};
14-
1514
/// FUSE filesystem server.
1615
#[derive(Debug)]
1716
pub struct Server {

polyfuse/src/common.rs

+23-23
Original file line numberDiff line numberDiff line change
@@ -65,21 +65,21 @@ impl TryFrom<libc::stat> for FileAttr {
6565

6666
fn try_from(attr: libc::stat) -> Result<Self, Self::Error> {
6767
Ok(Self(fuse_attr {
68-
ino: u64::try_from(attr.st_ino)?,
69-
size: u64::try_from(attr.st_size)?,
70-
blocks: u64::try_from(attr.st_blocks)?,
71-
atime: u64::try_from(attr.st_atime)?,
72-
mtime: u64::try_from(attr.st_mtime)?,
73-
ctime: u64::try_from(attr.st_ctime)?,
74-
atimensec: u32::try_from(attr.st_atime_nsec)?,
75-
mtimensec: u32::try_from(attr.st_mtime_nsec)?,
76-
ctimensec: u32::try_from(attr.st_ctime_nsec)?,
77-
mode: u32::try_from(attr.st_mode)?,
78-
nlink: u32::try_from(attr.st_nlink)?,
79-
uid: u32::try_from(attr.st_uid)?,
80-
gid: u32::try_from(attr.st_gid)?,
81-
rdev: u32::try_from(attr.st_gid)?,
82-
blksize: u32::try_from(attr.st_blksize)?,
68+
ino: u64::try_from(attr.st_ino).map_err(Self::Error::from)?,
69+
size: u64::try_from(attr.st_size).map_err(Self::Error::from)?,
70+
blocks: u64::try_from(attr.st_blocks).map_err(Self::Error::from)?,
71+
atime: u64::try_from(attr.st_atime).map_err(Self::Error::from)?,
72+
mtime: u64::try_from(attr.st_mtime).map_err(Self::Error::from)?,
73+
ctime: u64::try_from(attr.st_ctime).map_err(Self::Error::from)?,
74+
atimensec: u32::try_from(attr.st_atime_nsec).map_err(Self::Error::from)?,
75+
mtimensec: u32::try_from(attr.st_mtime_nsec).map_err(Self::Error::from)?,
76+
ctimensec: u32::try_from(attr.st_ctime_nsec).map_err(Self::Error::from)?,
77+
mode: u32::try_from(attr.st_mode).map_err(Self::Error::from)?,
78+
nlink: u32::try_from(attr.st_nlink).map_err(Self::Error::from)?,
79+
uid: u32::try_from(attr.st_uid).map_err(Self::Error::from)?,
80+
gid: u32::try_from(attr.st_gid).map_err(Self::Error::from)?,
81+
rdev: u32::try_from(attr.st_gid).map_err(Self::Error::from)?,
82+
blksize: u32::try_from(attr.st_blksize).map_err(Self::Error::from)?,
8383
padding: 0,
8484
}))
8585
}
@@ -199,14 +199,14 @@ impl TryFrom<libc::statvfs> for StatFs {
199199

200200
fn try_from(st: libc::statvfs) -> Result<Self, Self::Error> {
201201
Ok(Self(fuse_kstatfs {
202-
bsize: u32::try_from(st.f_bsize)?,
203-
frsize: u32::try_from(st.f_frsize)?,
204-
blocks: u64::try_from(st.f_blocks)?,
205-
bfree: u64::try_from(st.f_bfree)?,
206-
bavail: u64::try_from(st.f_bavail)?,
207-
files: u64::try_from(st.f_files)?,
208-
ffree: u64::try_from(st.f_ffree)?,
209-
namelen: u32::try_from(st.f_namemax)?,
202+
bsize: u32::try_from(st.f_bsize).map_err(Self::Error::from)?,
203+
frsize: u32::try_from(st.f_frsize).map_err(Self::Error::from)?,
204+
blocks: u64::try_from(st.f_blocks).map_err(Self::Error::from)?,
205+
bfree: u64::try_from(st.f_bfree).map_err(Self::Error::from)?,
206+
bavail: u64::try_from(st.f_bavail).map_err(Self::Error::from)?,
207+
files: u64::try_from(st.f_files).map_err(Self::Error::from)?,
208+
ffree: u64::try_from(st.f_ffree).map_err(Self::Error::from)?,
209+
namelen: u32::try_from(st.f_namemax).map_err(Self::Error::from)?,
210210
padding: 0,
211211
spare: [0u32; 6],
212212
}))

0 commit comments

Comments
 (0)