Skip to content

Commit 1f3be60

Browse files
fix: use u64_unprefixed_parse consistently in HttpRange parsing
The `StartingPoint` and `Suffix` branches used `.parse()` while the `Range` branch used `u64_unprefixed_parse()`, producing different error variants for the same kind of invalid input.
1 parent 83a74fd commit 1f3be60

1 file changed

Lines changed: 4 additions & 6 deletions

File tree

src/headers/range.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,16 +46,14 @@ impl FromStr for HttpRange {
4646
Ok(Self::Range(range))
4747
}
4848
(false, true) => {
49-
let start = start_str
50-
.parse()
51-
.map_err(|_| ParseHttpRangeOrContentRangeError::MalformedRange)?;
49+
let start = u64_unprefixed_parse(start_str)
50+
.map_err(ParseHttpRangeOrContentRangeError::InvalidRangePiece)?;
5251

5352
Ok(Self::StartingPoint(start))
5453
}
5554
(true, false) => {
56-
let suffix = end_str
57-
.parse()
58-
.map_err(|_| ParseHttpRangeOrContentRangeError::MalformedRange)?;
55+
let suffix = u64_unprefixed_parse(end_str)
56+
.map_err(ParseHttpRangeOrContentRangeError::InvalidRangePiece)?;
5957

6058
Ok(Self::Suffix(suffix))
6159
}

0 commit comments

Comments
 (0)