]> git.ipfire.org Git - thirdparty/coreutils.git/log
thirdparty/coreutils.git
9 years agobuild: update gnulib submodule to latest
Bernhard Voelker [Wed, 27 Jul 2016 07:33:18 +0000 (09:33 +0200)] 
build: update gnulib submodule to latest

Mainly for
77d36b5 obstack: pacify GCC 6 with -Wnull-dereference

9 years agomaint: skip a check when en_US.UTF-8 collation rules are broken
Jim Meyering [Mon, 25 Jul 2016 15:37:28 +0000 (08:37 -0700)] 
maint: skip a check when en_US.UTF-8 collation rules are broken

* cfg.mk (sc_THANKS_in_sorted): This check would fail on systems
for which "." is not ignored.  Add a quick sort-based check for
that error, and skip the check on any broken system.

9 years agodoc: make date(1) synopsis consistent with output +FORMAT
Pádraig Brady [Wed, 27 Jul 2016 09:05:20 +0000 (10:05 +0100)] 
doc: make date(1) synopsis consistent with output +FORMAT

* src/date.c (usage): Make the characters used to summarize
the input format, match the output +FORMAT characters.
* doc/coreutils.texi (date invocation): Likewise.
Fixes http://bugs.gnu.org/24077

9 years agomaint: fix dependency of man/arch.1
Bernhard Voelker [Tue, 26 Jul 2016 18:58:08 +0000 (20:58 +0200)] 
maint: fix dependency of man/arch.1

The following is a reproducer for the wrong dependency:

  $ ./configure --enable-install-program=arch
  $ make
  $ rm -f src/arch man/arch.1
  $ make man/arch.1
    GEN      man/arch.1
  help2man: can't get `--help' info from man/arch.td/arch
  Try `--no-discard-stderr' if option outputs to stderr
  Makefile:14378: recipe for target 'man/arch.1' failed
  make: *** [man/arch.1] Error 127

* man/local.mk (man/arch.1): Change to depend on src/arch rather than
src/uname: while the arch binary depends on uname.c and uname-arch.c,
its man page depends on the arch binary.

Reported downstream by Rodrigues Goldwyn <rgoldwyn@suse.com> in
https://build.opensuse.org/request/show/415172

9 years agosort: with -h, disallow thousands separator between number and unit
Kamil Dudka [Mon, 18 Jul 2016 17:04:45 +0000 (19:04 +0200)] 
sort: with -h, disallow thousands separator between number and unit

* src/sort.c (traverse_raw_number): Accept thousands separator only
if it is immediately followed by a digit.
* tests/misc/sort-h-thousands-sep.sh: Cover the fix for this bug.

Suggested by Pádraig Brady in http://bugs.gnu.org/24015

9 years agosort: make -h work with -k and blank used as thousands separator
Kamil Dudka [Mon, 18 Jul 2016 17:04:44 +0000 (19:04 +0200)] 
sort: make -h work with -k and blank used as thousands separator

* src/sort.c (traverse_raw_number): Allow to skip only one occurrence
of thousands_sep to avoid finding the unit in the next column in case
thousands_sep matches as blank and is used as column delimiter.
* tests/misc/sort-h-thousands-sep.sh: Add regression test for this bug.
* tests/local.mk: Reference the test.
* NEWS: Mention the bug fix.
Reported at https://bugzilla.redhat.com/1355780
Fixes http://bugs.gnu.org/24015

9 years agomaint: sort.c: deduplicate code for traversing numbers
Kamil Dudka [Mon, 18 Jul 2016 17:04:43 +0000 (19:04 +0200)] 
maint: sort.c: deduplicate code for traversing numbers

* src/sort.c (traverse_raw_number): New function for traversing numbers.
(find_unit_order): Use traverse_raw_number() instead of open-coding it.
(debug_key): Likewise.

9 years agoinstall: with -Z, set default SELinux context for created directories
Kamil Dudka [Fri, 8 Jul 2016 16:59:35 +0000 (18:59 +0200)] 
install: with -Z, set default SELinux context for created directories

* doc/coreutils.texi (install invocation): Update -Z documentation.
* src/install.c (make_ancestor): Set default security context before
calling mkdir() if the -Z option is given.
(process_dir): Call restorecon() on the destination directory if the
-Z option is given.
(usage): Update -Z documentation.
* tests/install/install-Z-selinux.sh: A new test for 'install -Z -D'
and 'install -Z -d' based on tests/mkdir/restorecon.sh.
* tests/local.mk: Reference the test.
* NEWS: Mention the improvement.
Reported at https://bugzilla.redhat.com/1339135
Fixes http://bugs.gnu.org/23868

9 years agotests: avoid false failure on 32 bit in readdir() test
Pádraig Brady [Wed, 6 Jul 2016 17:08:32 +0000 (18:08 +0100)] 
tests: avoid false failure on 32 bit in readdir() test

* tests/rm/rm-readdir-fail.sh: Since we use the returned dirent
from the readdir wrapper it must be the correct type and not
just cast.  Therefore setup so that we only have to define a
wrapper for readdir(), which works appropriately on 32 and 64 bit.
Issue reported by Bernhard Voelker, where rm was seen to invoke
rmdir() on invalid file names.

9 years agotests: improve recent seq EPIPE test
Assaf Gordon [Sun, 1 May 2016 19:43:59 +0000 (15:43 -0400)] 
tests: improve recent seq EPIPE test

Follow-up to commit c92585b1: improve epipe test script, with
suggestions from Bernhard Voelker and Pádraig Brady.
see: http://lists.gnu.org/archive/html/coreutils/2016-04/msg00067.html .

* tests/misc/seq-epipe.sh: Avoid too many subshells,
  stricter validation of errors and output from seq,
  skip if trapping SIGPIPE is not supported.

9 years agostty: fix sane setting of susp to ^z on Solaris
Pádraig Brady [Wed, 29 Jun 2016 08:49:01 +0000 (09:49 +0100)] 
stty: fix sane setting of susp to ^z on Solaris

* src/stty.c: Disable setting of "swtch" to ^z as that
conflicts with and disables using ^z as "susp".
* NEWS: Mention the bug fix.
Reported and tested by Rich Burridge at:
http://bugs.gnu.org/23866

9 years agotests: verify that fts diagnoses readdir() failures
Peter Benie [Sun, 26 Jun 2016 18:07:45 +0000 (19:07 +0100)] 
tests: verify that fts diagnoses readdir() failures

* tests/rm/rm-readdir-fail.sh: A new test to simulate readdir()
failing immediately or after returning a few entries, and verifying
that rm does the appropriate thing.
This was initially reported at:
http://bugzilla.opensuse.org/show_bug.cgi?id=984910
where it was mentioned that readdir() may fail
when an NFS server has a poor readdir cookie implementation.

9 years agoall: update gnulib submodule and tests/init.sh to latest
Pádraig Brady [Sun, 26 Jun 2016 19:58:41 +0000 (20:58 +0100)] 
all: update gnulib submodule and tests/init.sh to latest

* gnulib: Update to latest.
* NEWS: Specifically mention the fts readdir() fix
and reindent to standard indentation.
* tests/init.sh: Update from gnulib.

9 years agomaint: simplify partial writes etc. in 'yes'
Paul Eggert [Fri, 24 Jun 2016 22:58:44 +0000 (00:58 +0200)] 
maint: simplify partial writes etc. in 'yes'

* src/yes.c: Include full-write.h.
(main): Use full_write, not write, to simplify handling of partial
writes.  Don't bother using stdio to output data; just use
full_write with a buffer as large as needed.  Reuse operand
strings if possible, and if the buffer would otherwise be large.

9 years agoyes: handle short writes
Pádraig Brady [Thu, 23 Jun 2016 13:15:59 +0000 (14:15 +0100)] 
yes: handle short writes

* src/yes.c (main): Loop over the write buffer to
handle the case where write may write less than requested.
* NEWS: Mention the bug fix.
Reported by Paul Eggert.

9 years agoyes: fix copy and paste issue with previous commit
Pádraig Brady [Fri, 24 Jun 2016 00:09:28 +0000 (01:09 +0100)] 
yes: fix copy and paste issue with previous commit

* src/yes.c (main): Output 'y' not '-'.
* tests/misc/yes.sh: Add a test for default output.

9 years agomaint: work even if argc == INT_MAX
Paul Eggert [Thu, 23 Jun 2016 18:16:45 +0000 (20:16 +0200)] 
maint: work even if argc == INT_MAX

GCC 7 warned about undefined behavior in this unlikely case.
Problem reported by Jim Meyering in: http://bugs.gnu.org/23825
* src/md5sum.c (main):
* src/paste.c (main):
* src/yes.c (main):
Avoid undefined behavior when argc == INT_MAX.

9 years agodoc: clarify sort --key handling of default field separators
Pádraig Brady [Wed, 1 Jun 2016 10:56:47 +0000 (11:56 +0100)] 
doc: clarify sort --key handling of default field separators

* doc/coreutils.texi (sort invocation): Mention in the summary
dicussion that --key is used to specify fields.  Give a summary
in the --key description, of the most common use case of specifying
a field, and that by default those fields include the blank separators
at the start of each field in the comparisons.

9 years agosort: modify 'leading spaces' debug warning scenarios
Assaf Gordon [Wed, 1 Jun 2016 00:19:38 +0000 (20:19 -0400)] 
sort: modify 'leading spaces' debug warning scenarios

Print warning regardless of locale, avoid warning if key is zero width.
Problem reported by Karl Berry in http://bugs.gnu.org/23665 .

* src/sort.c: (key_warnings): change conditions for 'leading spaces'
warning.
* tests/misc/sort-debug-warn.sh: adjust tests accordingly.

9 years agotests: sort-debug-warn: add progress information lines
Assaf Gordon [Wed, 1 Jun 2016 00:11:34 +0000 (20:11 -0400)] 
tests: sort-debug-warn: add progress information lines

Easier troubleshooting of individual 'sort --debug' messages.
Discussed in http://bugs.gnu.org/23665 .

* tests/misc/sort-debug-warn.sh: add progress number before each sort
invocation.

9 years agodircolors: output colors for any $TERM matching *color*
Pádraig Brady [Sun, 15 May 2016 20:23:42 +0000 (21:23 +0100)] 
dircolors: output colors for any $TERM matching *color*

* src/dircolors.hin: Reduce the list by replacing all specific
mentions of "color" with the pattern "*color*".  This will also
cater for other entries like "konsole-256color".
Fixes http://bugs.gnu.org/23542

9 years agonl: reset numbering for each section
KOBAYASHI Takashi [Sun, 1 May 2016 12:47:25 +0000 (13:47 +0100)] 
nl: reset numbering for each section

* NEWS: Mention the bug fix.
* src/nl.c (proc_body, proc_footer): Reset numbering here too.
* doc/coreutils.texi (nl invocation): Adjust for behavior change.
* tests/misc/nl.sh: Add a test case.

9 years agostat,tail: add support for the SMB2 remote file system
Pádraig Brady [Thu, 12 May 2016 08:50:48 +0000 (09:50 +0100)] 
stat,tail: add support for the SMB2 remote file system

* stc/stat.c (human_fstype): Add file system ID definition,
and use "smb2" as the name.
* NEWS (Improvements): Mention the change.
Fixes http://bugs.gnu.org/23516

9 years agomaint: avoid new warning from gcc (GCC) 7.0.0 20160503 (experimental)
Jim Meyering [Wed, 4 May 2016 03:56:20 +0000 (20:56 -0700)] 
maint: avoid new warning from gcc (GCC) 7.0.0 20160503 (experimental)

* src/id.c (main): When configured with --enable-gcc-warnings and using
the very latest gcc built from git, building would fail with this:
  src/id.c:200:8: error: assuming signed overflow does not occur when \
    simplifying conditional to constant [-Werror=strict-overflow]
     bool default_format = (just_user + just_group + just_group_list
          ^~~~~~~~~~~~~~
Rewrite to use bool-appropriate operators.

9 years agotests: avoid false failure when df lists no root file system
Pádraig Brady [Mon, 25 Apr 2016 22:12:14 +0000 (23:12 +0100)] 
tests: avoid false failure when df lists no root file system

* tests/df/skip-duplicates.sh: Skip the test when there is no
'/' entry listed by df, which was seen in certain chroot setups.

9 years agoseq: detect and report I/O errors immediately
Assaf Gordon [Sun, 17 Apr 2016 06:28:13 +0000 (02:28 -0400)] 
seq: detect and report I/O errors immediately

Ensure I/O errors are detected (and terminate seq), preventing seq
from infloop (or running for long time with a large
range) upon write errors or ignored SIGPIPE. Examples:

     seq 1 inf > /dev/full             (seq_fast)
     seq 1.1 0.1 inf >/dev/full        (print_numbers)

* src/seq.c (io_error): A new function to diagnose appropriate
stdio errors and exit the program with failure status.
(seq_fast, print_numbers): Explicitly check for write errors
and terminate the program with diagnostic.
* tests/misc/seq-io-errors.sh: Test error detection with /dev/full.
* tests/misc/seq-epipe.sh: Test error detection with broken pipes.
* tests/local.mk: Add new tests.
* NEWS: Mention the fix.

9 years agostat,tail: add support for Windows Subsystem for Linux
Pádraig Brady [Thu, 21 Apr 2016 20:48:50 +0000 (21:48 +0100)] 
stat,tail: add support for Windows Subsystem for Linux

* src/stat.c (human_fstype): Add file system ID definition,
and use "wslfs" as the name.
* NEWS (Improvements): Mention the change.
Fixes http://bugs.gnu.org/23273

9 years agoyes: avoid redundant diagnostics on write error
Pádraig Brady [Mon, 4 Apr 2016 12:17:34 +0000 (13:17 +0100)] 
yes: avoid redundant diagnostics on write error

* src/yes.c (main): For large inputs only write a single
diagnostic for write errors.
* tests/misc/yes.sh: Test when /dev/full is available.

9 years agosleep,timeout: support overflowing floating point values
Pádraig Brady [Wed, 20 Apr 2016 17:26:58 +0000 (18:26 +0100)] 
sleep,timeout: support overflowing floating point values

* src/sleep.c (main): Allow ERANGE since we allow "inf" values.
* src/timeout.c (parse_duration): Likewise.
* tests/misc/sleep.sh: New file. Tests for sleep(1).
* tests/misc/timeout-parameters.sh: Add case for newly allowed
$LDBL_MAX.  Also use returns_ throughout the file.  Also avoid
small timeout values which might give false failures under load.

9 years agotests: avoid potential overflows with `expr`
Pádraig Brady [Wed, 20 Apr 2016 13:03:05 +0000 (14:03 +0100)] 
tests: avoid potential overflows with `expr`

* cfg.mk (sc_prohibit_expr_unsigned): expr uses intmax_t internally
when GMP is not available, so flag any uses of unsigned limits.
* tests/misc/timeout-parameters.sh: Remove the overflow related
to UINT_MAX as it's handled by the following case.  Change the
following case from 99... to $TIME_T_OFLOW to be more expressive
in what it's actually testing.  Directly check that commands succeed,
rather than inspecting $? afterwards.
* tests/dd/skip-seek-past-dev.sh: Guard against large device sizes.
* tests/id/setgid.sh: Protect: Guard against large group IDs.
* tests/misc/cut-huge-range.sh: Tweak comment to avoid syntax check.
It's tempting to simplify to just skip the test if expr fails,
but SIZE_MAX > INTMAX_MAX is the common case.

9 years agotests: fix recent false failure due to a race
Pádraig Brady [Wed, 20 Apr 2016 16:00:47 +0000 (17:00 +0100)] 
tests: fix recent false failure due to a race

* tests/cp/parent-perm-race.sh: This new race introduced in
commit v8.25-5-g632eda5 is quite hard to hit, but is due to
`ls > fifo` doing write()/close()/exit() once `cp` has
open() the source fifo.  Then the subsequent comparison of the
destination file may fail due to the file being missing or empty.
Previously `ls` generated output that was independent of `cp`.
Now we must wait for `cp` to finish before inspecting the
destination file that it wrote.

9 years agotests: let mkdir/p-v.sh fail when compare fails
Bernhard Voelker [Sun, 17 Apr 2016 11:19:22 +0000 (13:19 +0200)] 
tests: let mkdir/p-v.sh fail when compare fails

* tests/mkdir/p-v.sh: Set fail=1 when compare fails: the latter only
sets a non-Zero return code; evaluating that is up to the caller.

9 years agoseq: do not allow NaN arguments
Bernhard Voelker [Thu, 14 Apr 2016 10:39:28 +0000 (12:39 +0200)] 
seq: do not allow NaN arguments

* src/seq.c (isnan): Define macro.
(scan_arg): Add check if the given argument is NaN, and exit with
a proper error diagnostic in such a case.
(usage): Document it.
* tests/misc/seq.pl: Add tests.
* doc/coreutils.texi (seq invocation): Document the change.
* NEWS (Changes in behavior): Mention the change.

9 years agoseq: do not allow 0 as increment value
Bernhard Voelker [Thu, 14 Apr 2016 10:38:09 +0000 (12:38 +0200)] 
seq: do not allow 0 as increment value

* 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

9 years agostat,tail: add support for M1FS
Yigal Korman [Wed, 13 Apr 2016 13:15:20 +0000 (16:15 +0300)] 
stat,tail: add support for M1FS

* src/stat.c (human_fstype): Add file system ID definition.
* NEWS (Improvements): Mention the change, moving the previously added
"prl_fs" change note from "Changes in behavior" to here.
Fixes http://bugs.gnu.org/23283

9 years agostat: report type for "prl_fs" file systems
Pádraig Brady [Thu, 31 Mar 2016 15:34:28 +0000 (16:34 +0100)] 
stat: report type for "prl_fs" file systems

* src/stat.c (human_fstype): Identify the parallels file system.
Also tag as remote so that tail(1) doesn't use inotify, which
fails to detect changes made outside a VM.
Fixes http://bugs.gnu.org/23143

9 years agodate ls pr: fix time zone abbrs on SysV platforms
Paul Eggert [Thu, 17 Mar 2016 17:35:18 +0000 (10:35 -0700)] 
date ls pr: fix time zone abbrs on SysV platforms

The problematic code computed a struct tm in one time zone, and
then printed it or converted it to a string in another.  To be
portable the same time zone needs to be used for both operations.
On GNU platforms this is not an issue, but incorrect output can be
generated on System V style platforms like AIX where time zone
abbreviations are available only in the 'tzname' global variable.
Problem reported by Assaf Gordon in: http://bugs.gnu.org/23035
* NEWS: Document the bug.
* src/date.c (show_date):
* src/ls.c (long_time_expected_width, print_long_format):
* src/pr.c (init_header):
* src/stat.c (human_time): Use localtime_rz instead of localtime,
so that the time zone information is consistent for both localtime
and time-formatting functions like fprintftime and nstrftime.  For
'stat' this change is mostly just a code cleanup but it also
causes stat to also print nanoseconds when printing time stamps
that are out of localtime range, as this is more consistent with
what other programs do.  For programs other than 'stat' this fixes
bugs with time zone formats that use %Z.
* src/du.c, src/pr.c (localtz): New static var.
(main): Initialize it.
* src/du.c (show_date): New time zone argument, so that localtime
and fprintftime use the same time zone information.  All callers
changed.
* tests/misc/time-style.sh: New file.
* tests/local.mk (all_tests): Add it.
* tests/misc/date.pl: Test alphabetic time zone abbreviations.

9 years agomaint: remove gl/lib/reg*.c.diff; no longer needed
Jim Meyering [Mon, 14 Mar 2016 15:59:56 +0000 (08:59 -0700)] 
maint: remove gl/lib/reg*.c.diff; no longer needed

* gl/lib/regcomp.c.diff: Remove file, now that gnulib's
regcomp.c compiles regex.c with -Wno-unused-parameter.
* gl/lib/regex_internal.h.diff: Likewise.
* gl/lib/regex_internal.c.diff: This file induced a change to ensure
that the "Idx" type was unsigned and to remove a few "VAR < 0"
comparisons.  These days, it is probably fine to stay in sync with
gnulib/glibc's copies
of these files, so remove these patches, too.
* gl/lib/regexec.c.diff: Likewise.
Prompted by a report by Assaf Gordon and a suggestion from Paul Eggert.

9 years agobuild: update gnulib submodule to latest
Eric Blake [Tue, 8 Mar 2016 23:01:34 +0000 (16:01 -0700)] 
build: update gnulib submodule to latest

Mainly for:
*bdb72bc6 set-permissions: fix compilation on Cygwin

* bootstrap: Sync with gnulib.
* gl/lib/regcomp.c.diff: Regenerate against latest gnulib.

9 years agotests: avoid false-failure of split/filter.sh on XFS
Jim Meyering [Mon, 7 Mar 2016 00:38:01 +0000 (16:38 -0800)] 
tests: avoid false-failure of split/filter.sh on XFS

* tests/split/filter.sh: Use OFF_T_MAX-1 rather than OFF_T_MAX
as the size of a test file, to avoid false failure on an XFS file
system (or any file system permitting a file of size OFF_T_MAX).
Reported as http://bugs.gnu.org/22931

9 years agotest: Document that -a and -o are undesirable
Eric Blake [Fri, 4 Mar 2016 16:47:33 +0000 (09:47 -0700)] 
test: Document that -a and -o are undesirable

POSIX recommends avoiding -a and -o, for good reason.
src/test.c (usage): Mention that inherent ambiguities exist with
binary -a and -o.
Problem reported by Martin Gebert in: http://bugs.gnu.org/22909

9 years agoall: be less strict about usage if POSIX 2008
Paul Eggert [Tue, 23 Feb 2016 09:03:55 +0000 (01:03 -0800)] 
all: be less strict about usage if POSIX 2008

sort, tail, and uniq now support traditional usage like 'sort +2'
and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later.
* NEWS: Document this.
* doc/coreutils.texi (Standards conformance, tail invocation)
(sort invocation, uniq invocation, touch invocation):
Document new behavior, or behavior's dependence on POSIX 1003.1-2001.
* src/sort.c (struct keyfield.traditional_used):
Rename from obsolete_used, since implementations are now allowed
to support it.  All uses changed.
(main): Allow traditional usage if _POSIX2_VERSION is 200809.
* src/tail.c (parse_obsolete_option): Distinguish between
traditional usage (which POSIX 2008 and later allows) and obsolete
(which it still does not).
* src/uniq.c (strict_posix2): New function.
(main): Allow traditional usage if _POSIX2_VERSION is 200809.
* tests/misc/tail.pl: Test for new behavior.

9 years agodoc: document sort -o F F danger
Paul Eggert [Tue, 23 Feb 2016 07:48:36 +0000 (23:48 -0800)] 
doc: document sort -o F F danger

Problem reported by Yanyan Jiang 蒋炎岩 in: http://bugs.gnu.org/22769
* doc/coreutils.texi (sort invocation):
Mention possibility of 'sort -o F F' data loss during crashes.

9 years agodate: free timezone variable to avoid valgrind warning
Daniel Lockyer [Tue, 16 Feb 2016 16:52:07 +0000 (17:52 +0100)] 
date: free timezone variable to avoid valgrind warning

* src/date.c (main): Free TZ variable to pacify valgrind, guarded
by IF_LINT.

9 years agosplit: adjust recent --number changes
Pádraig Brady [Sat, 13 Feb 2016 04:15:51 +0000 (20:15 -0800)] 
split: adjust recent --number changes

* src/split.c (lines_rr): Reinstate the conditional
setting of the WROTE boolean, as otherwise split -n r/1 would
consume all input when all --filter commands are stopped.
There was a test in place to check for this, but
it was incorrect as detailed below.
(input_file_size): Immediately disallow --number with
non seekable inputs, as such an invocation is not currently
generally supported and will fail as the data overflows
the internal buffer.
* tests/split/l-chunk.sh: Adjust to again disallow -n /dev/zero.
Also change all '&& fail=1' checks to use the 'returns_ 1' form.
* tests/split/filter.sh: Change the no longer supported /dev/zero
case to a regular $OFF_T_MAX file (supported on XFS for example).
Also fix the timeout(1) commands so they're not subject to
pipefail issues.

9 years agostty: fix translated --help so the gettext header is not printed
Göran Uddeborg [Mon, 15 Feb 2016 21:00:52 +0000 (13:00 -0800)] 
stty: fix translated --help so the gettext header is not printed

* src/stty.c (usage): Remove an erroneous call to translate an
empty string, added in commit v8.23-112-g564f84a, which results
in the gettext header being printed for translated languages.
* THANKS.in: Remove the now committer.
* NEWS: Mention the bug fix.

9 years agotests: don't wait forever on GNU/Hurd
Paul Eggert [Fri, 12 Feb 2016 18:59:20 +0000 (10:59 -0800)] 
tests: don't wait forever on GNU/Hurd

* tests/cp/parent-perm-race.sh: Add timeouts so that the test does
not wait forever on GNU/Hurd.  This does not fix the underlying
bug but at least lets the tests make progress.
Problem reported by Nelson H.F. Beebe in: http://bugs.gnu.org/22624
Also, check that 'cp' actually copies the data; this is a better
test anyway, and simplifies the test code.
Also, avoid unlikely race if 'pid' is set in the environment.

9 years agosplit: fix problems with /dev/zero
Paul Eggert [Fri, 12 Feb 2016 18:16:11 +0000 (10:16 -0800)] 
split: fix problems with /dev/zero

Problem reported by Nelson H.F. Beebe in: http://bugs.gnu.org/22624
Other problems also fixed: basically, the code got confused because
GNU/Linux reports that /dev/zero has size zero.
* src/split.c (input_file_size): Now takes struct stat *, not just
size.  Always store the first buffer.  All callers changed.  Treat
/dev/zero as an infinitely-large file, both on GNU/Linux where
fstat and lseek say its size is zero, and on GNU/Hurd where they
say the size is OFF_T_MAX.
(cwrite): Return true on success.
(bytes_split): Don't try to read past EOF, and stop if a write fails.
(lines_rr): Omit stray check for ignorable errno.
(main): Get file size only when n_units > 1, since that's the only
time it is needed.  Defer most of the work to input_file_size.
* tests/split/l-chunk.sh: Adjust tests to match new behavior
on oddball inputs.

9 years agodoc: fix the --iso-8601 example in date --help
Vincent Lefevre [Sat, 30 Jan 2016 07:07:13 +0000 (23:07 -0800)] 
doc: fix the --iso-8601 example in date --help

* src/date.c (usage): The colon is used in the timezone offset
since commit v8.24-64-g17bbf6c.
* THANKS.in: Remove committer.
Fixes http://bugs.gnu.org/22491

9 years agobuild: avoid dynamic linking issue on Solaris sparc
Pádraig Brady [Mon, 25 Jan 2016 01:57:12 +0000 (17:57 -0800)] 
build: avoid dynamic linking issue on Solaris sparc

Solaris Studio 12 on sparc (not x86) will not remove
unused functions, thus leaving a reference to an
undefined program_name symbol from emit_try_help().

* src/system.h (emit_try_help): Change from an inline function
to a macro, so that the inline function is not actually
defined in libstdbuf.c.
Fixes http://bugs.gnu.org/22430

9 years agomaint: post-release administrivia
Pádraig Brady [Wed, 20 Jan 2016 10:56:02 +0000 (10:56 +0000)] 
maint: post-release administrivia

* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.

9 years agoversion 8.25 v8.25
Pádraig Brady [Wed, 20 Jan 2016 10:31:56 +0000 (10:31 +0000)] 
version 8.25

* NEWS: Record release date.

9 years agotests: avoid false failure in tail inotify test
Pádraig Brady [Tue, 19 Jan 2016 18:45:07 +0000 (18:45 +0000)] 
tests: avoid false failure in tail inotify test

* tests/tail-2/wait.sh: Restrict inotify specific test portion
to local file systems and also not with ---disable-inotify specified.
Failure noticed on NFS.

9 years agotests: avoid false failure due to remove() ignoring u-w on NFS
Pádraig Brady [Tue, 19 Jan 2016 17:49:11 +0000 (17:49 +0000)] 
tests: avoid false failure due to remove() ignoring u-w on NFS

* tests/rm/rm1.sh: Also remove the group write bit which
was required on one NFS setup at least.  Note u-w was
enough to deny file creation, g-w was also required to
deny file removal.
* tests/rm/cycle.sh: Likewise.
* tests/mv/perm-1.sh: Likewise.

9 years agotests: avoid false failure in preserve-slink-time.sh on GPFS
Pádraig Brady [Tue, 19 Jan 2016 15:51:00 +0000 (15:51 +0000)] 
tests: avoid false failure in preserve-slink-time.sh on GPFS

* tests/cp/preserve-slink-time.sh: Add a delay between the
ln and the cp so that there is enough difference between
the timestamps so GPFS won't discard the update.
Reported by Assaf Gordon.

9 years agotests: avoid false failure in shred-passes.sh
Pádraig Brady [Tue, 19 Jan 2016 14:58:55 +0000 (14:58 +0000)] 
tests: avoid false failure in shred-passes.sh

* tests/misc/shred-passes.sh: Specify an exact amount to shred,
to avoid running out of simulated random data on file systems
with a large st_blksize like GPFS for example.
Reported by Assaf Gordon.

9 years agotail: disable inotify with only non existent files
Pádraig Brady [Tue, 19 Jan 2016 13:22:42 +0000 (13:22 +0000)] 
tail: disable inotify with only non existent files

tests/tail-2/F-headers.sh and test/tail-2/retry.sh fail on
on remote file systems due to tail going into inotify mode
due to not being able to determine the remoteness of the
non existent files.

* src/tail.c (any_non_remote_file): A new function used
to disable inotify when there are no open files, as
we can't determine remoteness in that case.
* NEWS: Mention the bug fix.

9 years agoall: don't unconditionally use leaf optimization for NFS
Pádraig Brady [Mon, 18 Jan 2016 18:35:48 +0000 (18:35 +0000)] 
all: don't unconditionally use leaf optimization for NFS

* gnulib: Update to latest where the only change is to
not unconditionally enable leaf optimization for fts on NFS,
as it was seen to abort() with some NFS servers as per:
https://bugzilla.redhat.com/1299169
This affects utilities that traverse directories like
cp, rm, chmod etc.
* NEWS: Adjust the improvement message to leave only XFS.

9 years agotests: adjust memory limits in head-c.sh
Assaf Gordon [Mon, 18 Jan 2016 18:16:35 +0000 (18:16 +0000)] 
tests: adjust memory limits in head-c.sh

* tests/misc/head-c.sh: Further increase the limit to 8MB over
the base test command.  5.1MB was seen as minimum extra needed
on FreeBSD 9.3 x86_64.

9 years agotests: adjust delays to avoid false positives
Pádraig Brady [Mon, 18 Jan 2016 12:41:36 +0000 (12:41 +0000)] 
tests: adjust delays to avoid false positives

* tests/rm/dangling-symlink.sh: The effective delay was only
1.5s.  So delay before the operation, and increase the iteration
count by 1 to increase the delay to 6.3s.  This failure was
noticed once on a FreeBSD 10.2 x86_64 virtual machine.
* tests/dd/stats.sh: Remove quotes on sleep argument
to ensure arguments are accumulated appropriately.
* tests/du/move-dir-while-traversing.sh: sleep before operation,
to increase the effective delay from 1.6s to 3.2s.
* tests/tail-2/flush-initial.sh: Likewise.
* tests/tail-2/pipe-f2.sh: Sleep first so that the effective delay
matches the commented value.

9 years agotest: skip test rather than fail with Solaris 10 sed
Pádraig Brady [Mon, 18 Jan 2016 12:26:15 +0000 (12:26 +0000)] 
test: skip test rather than fail with Solaris 10 sed

* tests/rm/r-root.sh: This test was seen to ERROR due to
sed input not having a terminating '\n'.  Therefore just skip
with diagnostics upon failure to adjust the error output with sed.
Reported by Assaf Gordon.

9 years agotests: fix false failure with spaces in absolute $PWD
Pádraig Brady [Sat, 16 Jan 2016 17:45:57 +0000 (17:45 +0000)] 
tests: fix false failure with spaces in absolute $PWD

* tests/install/create-leading.sh: Ensure $PWD is quoted.
Reported by `make dist-check`.

9 years agobuild: update gnulib submodule to latest
Pádraig Brady [Sat, 16 Jan 2016 17:12:33 +0000 (17:12 +0000)] 
build: update gnulib submodule to latest

Mainly for:

dce117a sig2str: list all signals on FreeBSD >= 7
cff4b38 acl-permissions: port to USE_ACL==0 platforms

9 years agotests: show mount list on failure for df tests
Pádraig Brady [Sat, 16 Jan 2016 13:53:48 +0000 (13:53 +0000)] 
tests: show mount list on failure for df tests

* init.cfg (dump_mount_list_): A new function to output the
system mount list.
* tests/df/df-symlink.sh: Call dump_mount_list_ upon failure.
* tests/df/over-mount-device.sh: Likewise.
* tests/df/problematic-chars.sh: Likewise.
* tests/df/skip-rootfs.sh: Likewise.
* tests/df/total-verify.sh: Likewise.
* tests/df/unreadable.sh: Likewise.

9 years agotests: avoid false failure with BTRFS subvolumes
Pádraig Brady [Sat, 16 Jan 2016 13:34:07 +0000 (13:34 +0000)] 
tests: avoid false failure with BTRFS subvolumes

* tests/df/df-symlink.sh: Only check the symmetry of
the source <-> target lookup, when the source is only mounted once,
which isn't the case if '.' is a BTRFS subvolume for example.
Reported by Assaf Gordon on a default OpenSUSE 42.1 install.

9 years agomv: consistently warn about multiply specified source dirs
Pádraig Brady [Sat, 16 Jan 2016 11:35:50 +0000 (11:35 +0000)] 
mv: consistently warn about multiply specified source dirs

* src/copy.c (copy internal): Remember directories irrespective
of their link count, because on some file systems like BTRFS,
directories always have a link count of 1.

9 years agotests: remove a non portable localtime test
Pádraig Brady [Fri, 15 Jan 2016 15:56:30 +0000 (15:56 +0000)] 
tests: remove a non portable localtime test

* tests/misc/date.pl: This test was dependent on perl
unconditionally calling the system localtime() as date(1) does.
However perl has its own configure checks in place to avoid buggy
localtime implementations.  Therefore comment out this test
as a FIXME for now.  This test was seen to fail on FreeBSD 10
where localtime() returns nonsense values instead of failing
for arguments >= 2^56.

9 years agotests: adjust memory limits in head-c.sh
Pádraig Brady [Fri, 15 Jan 2016 14:16:11 +0000 (14:16 +0000)] 
tests: adjust memory limits in head-c.sh

* tests/misc/head-c.sh: Further increase the limit, to account
for the fact that head(1) needs at least 1.576MB over the base test
command on FreeBSD 10.  4MB should be enough headroom while
still providing over allocation protection.
Reported by Assaf Gordon.

9 years agotests: simplify invalid signal determination for kill -l
Pádraig Brady [Thu, 14 Jan 2016 14:21:53 +0000 (14:21 +0000)] 
tests: simplify invalid signal determination for kill -l

* src/operand2sig.c (operand2sig): Add a detailed comment explaining
why we validate even very large shell exit status values.
* tests/misc/kill.sh: Add a test case for the ksh scheme.
Simplify the INVALID signal number determination which also avoids
a false failure on systems like FreeBSD 10 with incomplete
signal list (caused by inaccurate NSIG).

9 years agotests: support older fallocate number formats
Pádraig Brady [Thu, 14 Jan 2016 02:18:58 +0000 (02:18 +0000)] 
tests: support older fallocate number formats

* tests/cp/fiemap-extents.sh: Support RHEL6 fallocate
which doesn't support IEC suffixes like "MiB" on numbers.
Also add some extra framework_failure_ protections.
Reported by Assaf Gordon.

9 years agotests: avoid coredumps when determining memory limits
Pádraig Brady [Thu, 14 Jan 2016 01:52:34 +0000 (01:52 +0000)] 
tests: avoid coredumps when determining memory limits

* init.cfg (get_min_ulimit_v_): Refactor ulimit call to...
(ulimit_supported_): ...here, and add calls to avoid coredumps.

9 years agosort: with --debug, flag setlocale() failures on OpenBSD
Pádraig Brady [Thu, 14 Jan 2016 01:17:57 +0000 (01:17 +0000)] 
sort: with --debug, flag setlocale() failures on OpenBSD

Locale categories are not equivalent on OpenBSD,
and LC_COLLATE only supports "C" for example.
Now LC_ALL is supported to set multiple other categories
on OpenBSD, so setlocale(LC_ALL, "") returns a string
indicating which categories were updated and which ignored.
Therefore...

* src/sort.c (main): ...Call setlocale(LC_COLLATE, "")
to explicitly check whether a specified LC_ALL or
LC_COLLATE environment variable value is supported
for the LC_COLLATE category.  Also use !! to explicitly
convert to bool to support c89 systems where bool is an int,
and thus would get values > 1.
Reported by Assaf Gordon.

9 years agomaint: remove temporary doc/constants.texi-t during build
Pádraig Brady [Wed, 13 Jan 2016 12:11:39 +0000 (12:11 +0000)] 
maint: remove temporary doc/constants.texi-t during build

* doc/local.mk (constants.texi): Remove temp file.

9 years agomaint: fix old spelling mistakes in NEWS
Pádraig Brady [Wed, 13 Jan 2016 11:28:45 +0000 (11:28 +0000)] 
maint: fix old spelling mistakes in NEWS

* NEWS: s/descendent/descendant/; s/indiscriminite/indiscriminate/.
* cfg.mk (old_NEWS_hash): Update via `make update-NEWS-hash`.

9 years agodoc: suggest dd "sync" flag to maximize "nocache" effectiveness
Pádraig Brady [Mon, 11 Jan 2016 22:31:45 +0000 (22:31 +0000)] 
doc: suggest dd "sync" flag to maximize "nocache" effectiveness

doc/coreutils.texi (dd invocation): Add oflag=sync to the streaming
example.  Also reference the "direct" flag.  Mention this is only
a request to the system.
* src/dd.c (usage): Mention the "sync" flag along with "nocache".
Also mention that it's only a request to drop the cache.
* THANKS.in: Add reporter Francois Rigault.

9 years agodoc: mention the '0#' printf flags with stat %a
Pádraig Brady [Tue, 12 Jan 2016 13:12:37 +0000 (13:12 +0000)] 
doc: mention the '0#' printf flags with stat %a

* src/stat.c (usage): Mention the '#' and '0' flags are useful with %a.
* doc/coreutils.texi (stat invocation): Likewise.  Also give an example
printing unambiguous octal output.
Reported at http://bugs.debian.org/810539

9 years agomv: fix data loss with repeated source dir and same destination
Pádraig Brady [Tue, 12 Jan 2016 12:39:43 +0000 (12:39 +0000)] 
mv: fix data loss with repeated source dir and same destination

commit v8.23-31-g90aa291 failed to consider this case,
where the previous rename has failed, thus causing the
following to remove the specified directory:

  mv dir dir dir

* src/copy.c (copy_internal): Assume this rename attempt has
succeeded, as a previous failure will already have been handled,
and we don't want to remove the source directory in this case.
* tests/cp/duplicate-sources.sh: Consolidate this test file to...
* tests/mv/dup-source.sh: ...here.  Add test cases for same
source and dest.
* tests/local.mk: Remove the consolidated test.
* NEWS: Mention the bug fix.

Reported at https://bugzilla.redhat.com/1297464

9 years agotests: include part of wc-files0.sh skipped by mistake
Pádraig Brady [Sat, 9 Jan 2016 01:24:20 +0000 (01:24 +0000)] 
tests: include part of wc-files0.sh skipped by mistake

* tests/misc/wc-files0.sh: $fail is always set to 0,
so correct the test to include that part of the test case.

9 years agowc: avoid ambiguous output with '\n' in file names
Pádraig Brady [Sat, 9 Jan 2016 01:38:30 +0000 (01:38 +0000)] 
wc: avoid ambiguous output with '\n' in file names

* src/wc.c (write_counts): Shell escape the file name
if it contains '\n' so only a single line per file is output.
* tests/misc/wc-files0.sh: Add a test case.
* NEWS: Mention the improvement.

9 years agonumfmt: add the -z,--zero-terminated option
Assaf Gordon [Fri, 8 Jan 2016 18:55:12 +0000 (13:55 -0500)] 
numfmt: add the -z,--zero-terminated option

* doc/coreutils.texi (numfmt invocation): Reference the description.
* src/numfmt.c: Parameterize '\n' references.
* tests/misc/numfmt.pl: Add tests for character and field processing.
* NEWS: Mention the new feature.

9 years agopaste: add the -z,--zero-terminated option
Pádraig Brady [Fri, 8 Jan 2016 15:57:06 +0000 (15:57 +0000)] 
paste: add the -z,--zero-terminated option

* doc/coreutils.texi (paste invocation): Reference -z description.
* src/paste.c (main): Parameterize the use of '\n'.
* tests/misc/paste.pl: Add test cases.
* NEWS: Mention the new feature.

9 years agocomm: support NUL --output-delimiter for consistency
Pádraig Brady [Fri, 8 Jan 2016 15:42:56 +0000 (15:42 +0000)] 
comm: support NUL --output-delimiter for consistency

* src/comm.c (main): Track the output delimiter length,
so that it can be adjusted to 1 for the NUL delimiter.
Also rename the global variable from "delimiter" to
"col_sep" so its use is more obvious, and to distinguish
from the recently added "delim" global variable.
* tests/misc/comm.pl: Adjust accordingly.

9 years agocomm: add the -z,--zero-terminated option
Pádraig Brady [Fri, 8 Jan 2016 15:14:01 +0000 (15:14 +0000)] 
comm: add the -z,--zero-terminated option

* doc/coreutils.texi (comm invocation): Reference option description.
* src/comm.c (main): Use readlinebuffer_delim() to support
a parameterized delimiter.
* tests/misc/comm.pl: Add test cases.
* NEWS: Mention the new feature.

9 years agotac: support an empty (NUL) --separator
Pádraig Brady [Fri, 8 Jan 2016 14:31:27 +0000 (14:31 +0000)] 
tac: support an empty (NUL) --separator

* doc/coreutils.texi (tac invocation): Mention the
NUL delineation with an empty --separator.
* src/tac.c (main): Allow an empty separator when -r not specified.
* tests/misc/tac.pl: Add test cases.
* NEWS: Mention the new feature.
Fixes http://bugs.gnu.org/8103

9 years agocut: add the -z,--zero-terminated option
Pádraig Brady [Fri, 8 Jan 2016 13:04:03 +0000 (13:04 +0000)] 
cut: add the -z,--zero-terminated option

* doc/coreutils.texi (cut invocation): Reference the description.
* src/cut.c: Parameterize '\n' references.
* tests/misc/cut.pl: Add tests for character and field processing.
* NEWS: Mention the new feature.

9 years agohead,tail: add the -z,--zero-terminated option
Richard Russon [Sat, 26 Sep 2015 13:22:26 +0000 (14:22 +0100)] 
head,tail: add the -z,--zero-terminated option

* doc/coreutils.texi: Reference the option description.
* src/head.c: Parameterize the delimiter character.
* src/tail.c: Likewise.
* tests/misc/head.pl: Add test case.
* tests/misc/tail.pl: Likewise.
* NEWS: Mention the new feature.

9 years agojoin,sort,uniq: with -z, treat '\n' as a field separator
Pádraig Brady [Tue, 12 Jan 2016 16:29:32 +0000 (16:29 +0000)] 
join,sort,uniq: with -z, treat '\n' as a field separator

* NEWS: Mention the change in behavior.
* doc/coreutils.texi (newlineFieldSeparator): A new description,
referenced from ({join,sort,uniq} invocation).
* src/system.h (field_sep): A new inline function to determine
if a character is a field separator.
* src/join.c (usage): s/whitespace/blank/ to be more accurate
wrt which characters are field separators.
(xfields): s/isblank/field_sep/.
* src/sort.c (inittables): Likewise.
* src/uniq.c (find_field): Likewise.
* tests/misc/join.pl: Adjust -z test, and add a test/example
for processing the whole record with field processing.
* tests/misc/sort.pl: Add -z test cases, including case with '\n'.
* tests/misc/uniq.pl: Add -z -f test case with \n.

9 years agotests: fix races wrt output files of background processes
Bernhard Voelker [Sun, 10 Jan 2016 00:44:04 +0000 (01:44 +0100)] 
tests: fix races wrt output files of background processes

At least the false positive in tail-2/follow-stdin.sh could be seen
on a 4-core i5 system with -j8.  Fix similar cases. too.

* tests/tail-2/follow-stdin.sh: Empty the 'out' file in each iteration.
Otherwise, under heavy system load, 'check_tail_output' would see the
expected output from the previous round before tail would have the
chance to come up in the background.
While at it, move the creation of the 'exp' file out of the loop.
* tests/dd/stats.sh: Empty the output file of the background process
here, too.
* tests/misc/cat-buf.sh: Likewise.
* tests/misc/stdbuf.sh: Likewise.
* tests/tail-2/wait.sh: Likewise.

9 years agostty: support "flusho" local setting
Pádraig Brady [Wed, 6 Jan 2016 15:50:11 +0000 (15:50 +0000)] 
stty: support "flusho" local setting

This is used to discard terminal output on FreeBSD based systems.

* src/stty.c (mode_info): Add FLUSHO where supported.
(usage): Document for "local" and "combination" settings.
* doc/coreutils.texi (local stty settings): Document,
mentioning that this option is supported but ignored on GNU/Linux.

9 years agostty: support [-]drain setting to control waiting for pending Tx
Pádraig Brady [Wed, 6 Jan 2016 14:40:03 +0000 (14:40 +0000)] 
stty: support [-]drain setting to control waiting for pending Tx

Instead of commit v8.24-132-g5171bef which only provides
control to disable this behavior (with -I), provide
the symmetrical "[-]drain" special setting.

* src/stty.c (main): Parse the [-]drain setting instead of -I,
and treat like a global option.
(usage): Adjust accordingly.
* tests/misc/stty.sh: Test "drain" with and without options.
* NEWS: Mention the new feature.

9 years agostty: support -I, --immediate to not wait for pending transmission
Pádraig Brady [Mon, 4 Jan 2016 12:13:40 +0000 (12:13 +0000)] 
stty: support -I, --immediate to not wait for pending transmission

In some cases an initial drain may block indefinitely as discussed at:
http://lists.gnu.org/archive/html/coreutils/2016-01/msg00007.html

* src/stty.c (main): Use TCSANOW rather than TCSADRAIN if -I specified.
(usage): Document the new option.
* doc/coreutils.texi (stty invocation): Likewise.
* tests/misc/stty.sh: Ensure -I is supported.
* NEWS: Mention the new feature.

9 years agodoc: avoid unwanted display of the 'coreutils' command info
Pádraig Brady [Sun, 3 Jan 2016 01:28:47 +0000 (01:28 +0000)] 
doc: avoid unwanted display of the 'coreutils' command info

* doc/coreutils.texi (coreutils): Remove this direntry
so that `info coreutils` will display the table of contents,
rather than the unlikely intended coreutils Multi-call invocation.
This also supports lookups like `info coreutils readlink`,
but note that only works with the standard info viewer,
and not with pinfo for example.

9 years agodoc: mention in more places that -D will create --target-directory
Pádraig Brady [Sat, 2 Jan 2016 22:22:55 +0000 (22:22 +0000)] 
doc: mention in more places that -D will create --target-directory

* src/install.c (usage): Mention this commonly required functionality
in the -D option description.
* doc/coreutils.texi (install invocation): Likewise for the
--target-directory description.

9 years agoinstall: only attempt to create a target dir once
Pádraig Brady [Sat, 2 Jan 2016 22:14:41 +0000 (22:14 +0000)] 
install: only attempt to create a target dir once

* src/install.c (main): As an optimization, when calling
install_file_in_dir() for each file, only attempt to create
the target directory once, as this is invariant over the loop.

9 years agoinstall: fix relative copies to absolute directory with -D
Pádraig Brady [Sat, 2 Jan 2016 18:38:37 +0000 (18:38 +0000)] 
install: fix relative copies to absolute directory with -D

* src/install.c (mkancesdirs_safe_wd): Unconditionally
restore the current working directory when possibly called
multiple times (from install_file_in_dir()).
* tests/install/create-leading.sh: Add a test case.
* NEWS: Mention the fix.
Fixes http://bugs.gnu.org/21497

9 years agomaint: fix sc_long_lines to warn about 100+ maximum line length again
Bernhard Voelker [Sat, 2 Jan 2016 23:18:58 +0000 (00:18 +0100)] 
maint: fix sc_long_lines to warn about 100+ maximum line length again

Since commit v8.23-60-g414a8cf, the above check failed to find sources
where the length of the longest line is a 3 or more digit number.

* cfg.mk (sc_long_lines): Remove the '\' escape character before '{'
and '}', because this would mean literal '{' and '}' characters in
an extended regular expression in sed(1).

9 years agomaint: avoid a sc_long_lines failure in recent commit
Pádraig Brady [Fri, 1 Jan 2016 14:23:01 +0000 (14:23 +0000)] 
maint: avoid a sc_long_lines failure in recent commit

* src/dd.c (alloc_ibuf): Shorten line length.

9 years agomaint: update all copyright year number ranges
Pádraig Brady [Fri, 1 Jan 2016 14:10:41 +0000 (14:10 +0000)] 
maint: update all copyright year number ranges

Run "make update-copyright" and then...

* gnulib: Update to latest with copyright year adjusted.
* tests/init.sh: Sync with gnulib to pick up copyright year.
* bootstrap: Likewise.
* tests/sample-test: Adjust to use the single most recent year.

9 years agobuild: update gnulib submodule to latest
Paul Eggert [Thu, 31 Dec 2015 22:13:23 +0000 (14:13 -0800)] 
build: update gnulib submodule to latest

9 years agodd: append spaces to shorter status=progress line
Paul Eggert [Thu, 31 Dec 2015 22:09:05 +0000 (14:09 -0800)] 
dd: append spaces to shorter status=progress line

Problem noted by Pádraig Brady in: http://bugs.gnu.org/22277#8
Also, make the output a bit more precise while we're at it.
* NEWS: Document this.
* src/dd.c (previous_time): Remove, replacing with ...
(next_time): New var.  All uses changed.
This avoids some rounding errors, and should be a bit faster.
(newline_pending): Remove, replacing with ...
(progress_len): New var.  All uses changed.
This lets us keep track of how many trailing spaces to append.
(print_xfer_stats): Get the time first thing, so that it's
closer to being correct.  Count the bytes output, and append
trailing spaces if needed.  Add remarks to translators about
translation lengths.