From 0dbed0fd5908266fc66147619f9338e6ed7e7849 Mon Sep 17 00:00:00 2001 From: James Robson Date: Thu, 18 Feb 2021 21:10:53 +0000 Subject: [PATCH] Do not allow seq to run with an increment of zero --- src/uu/seq/src/seq.rs | 4 ++++ tests/by-util/test_seq.rs | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/src/uu/seq/src/seq.rs b/src/uu/seq/src/seq.rs index 6a8a57a01..671dd7e1c 100644 --- a/src/uu/seq/src/seq.rs +++ b/src/uu/seq/src/seq.rs @@ -133,6 +133,10 @@ pub fn uumain(args: impl uucore::Args) -> i32 { } else { 1.0 }; + if increment == 0.0 { + show_error!("increment value: '{}'", &numbers[1][..]); + return 1; + } let last = { let slice = &numbers[numbers.len() - 1][..]; padding = cmp::max(padding, slice.find('.').unwrap_or_else(|| slice.len())); diff --git a/tests/by-util/test_seq.rs b/tests/by-util/test_seq.rs index b1265121b..d4cff9aaa 100644 --- a/tests/by-util/test_seq.rs +++ b/tests/by-util/test_seq.rs @@ -40,3 +40,9 @@ fn test_equalize_widths() { fn test_seq_wrong_arg() { new_ucmd!().args(&["-w", "5", "10", "33", "32"]).fails(); } + +#[test] +fn test_zero_step() { + new_ucmd!().args(&["10", "0", "32"]).fails(); +} +