aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2026-07-18 04:20:43 +0300
committerValentin Popov <valentin@popov.link>2026-07-18 04:20:43 +0300
commit337894528c3afd55826b3b766a3afa6c076ba5fa (patch)
treedc681fab3117ff051009022b38f9c81fa7bfbb7d /crates
parent93cddf185195922a988741281fe8efbd69f2214c (diff)
downloadfparkan-337894528c3afd55826b3b766a3afa6c076ba5fa.tar.xz
fparkan-337894528c3afd55826b3b766a3afa6c076ba5fa.zip
build: upgrade Rust toolchain to 1.97.1
Diffstat (limited to 'crates')
-rw-r--r--crates/fparkan-vfs/src/lib.rs10
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),
)
}