From 81e589021d9c47e4fbc4284e82881a9703246476 Mon Sep 17 00:00:00 2001 From: Bernhard Voelker Date: Thu, 14 Apr 2016 12:38:09 +0200 Subject: seq: do not allow 0 as increment value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * src/seq.c (main): Exit with an error diagnostic when the given step value is Zero. (usage): Document it. * doc/coreutils.texi (seq invocation): Likewise. * tests/misc/seq.pl: Add tests. * NEWS (Changes in behavior): Mention the change. Reported by Маренков Евгений in: http://bugs.gnu.org/23110 --- src/seq.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/seq.c') diff --git a/src/seq.c b/src/seq.c index fbb94a0c0..91cf625e9 100644 --- a/src/seq.c +++ b/src/seq.c @@ -92,6 +92,7 @@ INCREMENT would become greater than LAST.\n\ FIRST, INCREMENT, and LAST are interpreted as floating point values.\n\ INCREMENT is usually positive if FIRST is smaller than LAST, and\n\ INCREMENT is usually negative if FIRST is greater than LAST.\n\ +INCREMENT must not be 0.\n\ "), stdout); fputs (_("\ FORMAT must be suitable for printing one argument of type 'double';\n\ @@ -635,6 +636,13 @@ main (int argc, char **argv) if (optind < argc) { step = last; + if (step.value == 0) + { + error (0, 0, _("invalid Zero increment value: %s"), + quote (argv[optind-1])); + usage (EXIT_FAILURE); + } + last = scan_arg (argv[optind++]); } } -- cgit v1.2.3-54-g00ecf