fix: distinguish an inverted --lines range from an out-of-bounds one
commit
206b265fix: distinguish an inverted --lines range from an out-of-bounds one
Reviews
No reviews of this commit yet — record a verdict below.
Start a review
crates/git-ents/src/main.rs
@@ -521,10 +521,14 @@
.parse::<u64>()
.map_err(|_error| format!("invalid line number {number:?} in --lines"))
};
- Ok(Some(LineRange {
- start: parse(start)?,
- end: parse(end)?,
- }))
+ let start = parse(start)?;
+ let end = parse(end)?;
+ if start > end {
+ return Err(format!(
+ "--lines {start}:{end} is inverted (start must not come after end)"
+ ));
+ }
+ Ok(Some(LineRange { start, end }))
}
/// Resolve `id` — a full comment genesis hash or a unique prefix of one —