diff options
author | Colin Finck <colin@reactos.org> | 2021-06-05 17:06:34 +0300 |
---|---|---|
committer | Colin Finck <colin@reactos.org> | 2021-06-05 17:06:34 +0300 |
commit | 5c60695e0d11a07602a94accd2546b408503c6d3 (patch) | |
tree | 8666408da0ab703f341ce6e833e13ebf7d0388d8 | |
parent | 5ec3d515517807f08e4485b8ab4ffdec02c84751 (diff) |
Prefer `i64::try_from` over manual range checks
-rw-r--r-- | src/attribute_value.rs | 5 |
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); } } } |