diff options
| author | Valentin Popov <valentin@popov.link> | 2026-07-18 04:20:43 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-07-18 04:20:43 +0300 |
| commit | 337894528c3afd55826b3b766a3afa6c076ba5fa (patch) | |
| tree | dc681fab3117ff051009022b38f9c81fa7bfbb7d /crates/fparkan-vfs/src/lib.rs | |
| parent | 93cddf185195922a988741281fe8efbd69f2214c (diff) | |
| download | fparkan-337894528c3afd55826b3b766a3afa6c076ba5fa.tar.xz fparkan-337894528c3afd55826b3b766a3afa6c076ba5fa.zip | |
build: upgrade Rust toolchain to 1.97.1
Diffstat (limited to 'crates/fparkan-vfs/src/lib.rs')
| -rw-r--r-- | crates/fparkan-vfs/src/lib.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/crates/fparkan-vfs/src/lib.rs b/crates/fparkan-vfs/src/lib.rs index 68d812b..7adddf0 100644 --- a/crates/fparkan-vfs/src/lib.rs +++ b/crates/fparkan-vfs/src/lib.rs @@ -364,10 +364,14 @@ fn file_identity(metadata: &fs::Metadata) -> Option<u64> { #[cfg(windows)] #[allow(clippy::unnecessary_wraps)] fn file_identity(metadata: &fs::Metadata) -> Option<u64> { + // Stable Rust does not expose the Windows file index. Keep a best-effort + // replacement detector from metadata that is available through the + // supported standard-library API; `read` also compares size and + // last-write time before returning bytes. Some( - (metadata.volume_serial_number() as u64).rotate_left(40) - ^ ((metadata.file_index_high() as u64) << 32) - ^ metadata.file_index_low() as u64, + metadata.creation_time().rotate_left(17) + ^ metadata.last_write_time().rotate_left(31) + ^ u64::from(metadata.file_attributes()).rotate_left(47), ) } |
