diff --git a/src/fs/mod.rs b/src/fs/mod.rs index 28e4b08..c4e8a9c 100644 --- a/src/fs/mod.rs +++ b/src/fs/mod.rs @@ -43,6 +43,7 @@ pub enum FsEntry { #[derive(Clone, std::fmt::Debug)] pub struct FsDirectory { pub name: String, + pub abs_path: PathBuf, pub last_change_time: SystemTime, pub last_access_time: SystemTime, pub creation_time: SystemTime, @@ -60,6 +61,7 @@ pub struct FsDirectory { #[derive(Clone, std::fmt::Debug)] pub struct FsFile { pub name: String, + pub abs_path: PathBuf, pub last_change_time: SystemTime, pub last_access_time: SystemTime, pub creation_time: SystemTime, diff --git a/src/host/mod.rs b/src/host/mod.rs index c2c7759..6adf23e 100644 --- a/src/host/mod.rs +++ b/src/host/mod.rs @@ -275,6 +275,7 @@ impl Localhost { // Is dir FsEntry::Directory(FsDirectory { name: file_name, + abs_path: path, last_change_time: attr.modified().unwrap_or(SystemTime::UNIX_EPOCH), last_access_time: attr.accessed().unwrap_or(SystemTime::UNIX_EPOCH), creation_time: attr.created().unwrap_or(SystemTime::UNIX_EPOCH), @@ -296,6 +297,7 @@ impl Localhost { }; FsEntry::File(FsFile { name: file_name, + abs_path: path, last_change_time: attr.modified().unwrap_or(SystemTime::UNIX_EPOCH), last_access_time: attr.accessed().unwrap_or(SystemTime::UNIX_EPOCH), creation_time: attr.created().unwrap_or(SystemTime::UNIX_EPOCH), @@ -339,6 +341,7 @@ impl Localhost { // Is dir FsEntry::Directory(FsDirectory { name: file_name, + abs_path: path, last_change_time: attr.modified().unwrap_or(SystemTime::UNIX_EPOCH), last_access_time: attr.accessed().unwrap_or(SystemTime::UNIX_EPOCH), creation_time: attr.created().unwrap_or(SystemTime::UNIX_EPOCH), @@ -357,6 +360,7 @@ impl Localhost { }; FsEntry::File(FsFile { name: file_name, + abs_path: path, last_change_time: attr.modified().unwrap_or(SystemTime::UNIX_EPOCH), last_access_time: attr.accessed().unwrap_or(SystemTime::UNIX_EPOCH), creation_time: attr.created().unwrap_or(SystemTime::UNIX_EPOCH),