Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/ntfs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorColin Finck <colin@reactos.org>2021-06-05 17:06:34 +0300
committerColin Finck <colin@reactos.org>2021-06-05 17:06:34 +0300
commit5c60695e0d11a07602a94accd2546b408503c6d3 (patch)
tree8666408da0ab703f341ce6e833e13ebf7d0388d8 /src
parent5ec3d515517807f08e4485b8ab4ffdec02c84751 (diff)
Prefer `i64::try_from` over manual range checks
Diffstat (limited to 'src')
-rw-r--r--src/attribute_value.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/attribute_value.rs b/src/attribute_value.rs
index a41f1ca..2ae32dd 100644
--- a/src/attribute_value.rs
+++ b/src/attribute_value.rs
@@ -8,6 +8,7 @@ use crate::types::Lcn;
use binread::io;
use binread::io::{Read, Seek, SeekFrom};
use binread::BinReaderExt;
+use core::convert::TryFrom;
use core::iter::FusedIterator;
use core::ops::Range;
use core::{cmp, mem};
@@ -435,8 +436,8 @@ impl<'n> NtfsAttributeNonResidentValue<'n> {
// We don't need to traverse data runs from the very beginning then.
if let SeekFrom::Start(n) = bytes_to_seek {
if let Some(n_from_current) = n.checked_sub(self.stream_position) {
- if n_from_current <= i64::MAX as u64 {
- bytes_to_seek = SeekFrom::Current(n_from_current as i64);
+ if let Ok(signed_n_from_current) = i64::try_from(n_from_current) {
+ bytes_to_seek = SeekFrom::Current(signed_n_from_current);
}
}
}