summaryrefslogtreecommitdiff
path: root/core/coreutils/coreutils-8.22-shuf-segfault.patch
diff options
context:
space:
mode:
Diffstat (limited to 'core/coreutils/coreutils-8.22-shuf-segfault.patch')
-rw-r--r--core/coreutils/coreutils-8.22-shuf-segfault.patch74
1 files changed, 0 insertions, 74 deletions
diff --git a/core/coreutils/coreutils-8.22-shuf-segfault.patch b/core/coreutils/coreutils-8.22-shuf-segfault.patch
deleted file mode 100644
index e22b3c7b2..000000000
--- a/core/coreutils/coreutils-8.22-shuf-segfault.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 24eb395471176e24762b08bfcef7562911537504 Mon Sep 17 00:00:00 2001
-From: Paul Eggert <eggert@cs.ucla.edu>
-Date: Sun, 23 Feb 2014 15:34:48 -0800
-Subject: [PATCH] shuf: with -r, don't dump core if the input is empty
-
-Problem reported by valiant xiao in <http://bugs.gnu.org/16855>.
-* NEWS: Document this.
-* src/shuf.c (main): With -r, report an error if the input is empty.
-* tests/misc/shuf.sh: Test for the bug.
----
- NEWS | 3 +++
- src/shuf.c | 15 +++++++++++----
- tests/misc/shuf.sh | 4 ++++
- 3 files changed, 18 insertions(+), 4 deletions(-)
-
-diff --git a/NEWS b/NEWS
-index e72942b..2df246d 100644
---- a/NEWS
-+++ b/NEWS
-@@ -22,6 +22,9 @@ GNU coreutils NEWS -*- outline -*-
- it would display an error, requiring --no-dereference to avoid the issue.
- [bug introduced in coreutils-5.3.0]
-
-+ shuf -r no longer dumps core if the input is empty.
-+ [bug introduced in coreutils-8.22]
-+
- ** New features
-
- od accepts a new option: --endian=TYPE to handle inputs with different byte
-diff --git a/src/shuf.c b/src/shuf.c
-index d4641fe..2a91072 100644
---- a/src/shuf.c
-+++ b/src/shuf.c
-@@ -576,11 +576,18 @@ main (int argc, char **argv)
- /* Generate output according to requested method */
- if (repeat)
- {
-- if (input_range)
-- i = write_random_numbers (randint_source, head_lines,
-- lo_input, hi_input, eolbyte);
-+ if (head_lines == 0)
-+ i = 0;
- else
-- i = write_random_lines (randint_source, head_lines, line, n_lines);
-+ {
-+ if (n_lines == 0)
-+ error (EXIT_FAILURE, 0, _("No lines to repeat"));
-+ if (input_range)
-+ i = write_random_numbers (randint_source, head_lines,
-+ lo_input, hi_input, eolbyte);
-+ else
-+ i = write_random_lines (randint_source, head_lines, line, n_lines);
-+ }
- }
- else
- {
-diff --git a/tests/misc/shuf.sh b/tests/misc/shuf.sh
-index d3ea1f2..d7251d1 100755
---- a/tests/misc/shuf.sh
-+++ b/tests/misc/shuf.sh
-@@ -43,6 +43,10 @@ compare in out1 || { fail=1; echo "not a permutation" 1>&2; }
- t=$(shuf -e a b c d e | sort | fmt)
- test "$t" = 'a b c d e' || { fail=1; echo "not a permutation" 1>&2; }
-
-+# coreutils-8.22 dumps core.
-+shuf -er
-+test $? -eq 1 || fail=1
-+
- # Before coreutils-6.3, this would infloop.
- # "seq 1860" produces 8193 (8K + 1) bytes of output.
- seq 1860 | shuf > /dev/null || fail=1
---
-1.8.5.3
-