summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2016-06-26 20:58:41 +0100
committerPádraig Brady <P@draigBrady.com>2016-06-26 20:58:41 +0100
commitef9650170f795be41223c8887258a1c596ecc162 (patch)
tree34f80302a068c5ffffbbe4e8dd0a9f0de1b12eda
parent4cdb1703aff044de44d27e0558714542197f6dad (diff)
downloadcoreutils-ef9650170f795be41223c8887258a1c596ecc162.tar.xz
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.
-rw-r--r--NEWS60
m---------gnulib0
-rwxr-xr-xtests/init.sh31
3 files changed, 50 insertions, 41 deletions
diff --git a/NEWS b/NEWS
index b6c5c06ef..bfaf2399e 100644
--- a/NEWS
+++ b/NEWS
@@ -4,46 +4,52 @@ GNU coreutils NEWS -*- outline -*-
** Bug fixes
- cp, mv, and install no longer run into undefined behavior when
- handling ACLs on Cygwin and Solaris platforms. [bug introduced in
- coreutils-8.24]
+ cp, mv, and install no longer run into undefined behavior when
+ handling ACLs on Cygwin and Solaris platforms. [bug introduced in
+ coreutils-8.24]
- date, du, ls, and pr no longer mishandle time zone abbreviations on
- System V style platforms where this information is available only
- in the global variable 'tzname'. [bug introduced in coreutils-8.24]
+ chcon, chgrp, chmod, chown, du, and rm, or specifically utilities
+ using the FTS interface, now diagnose failures returned by readdir().
+ [this bug was inherent in the use of fts: thus, for rm the bug was
+ introduced in coreutils-8.0. du, chmod, chgrp and chown started using
+ fts in 6.0. chcon was added in coreutils-6.9.91 with fts support. ]
- nl now resets numbering for each page section rather than just for each page.
- [This bug was present in "the beginning".]
+ date, du, ls, and pr no longer mishandle time zone abbreviations on
+ System V style platforms where this information is available only
+ in the global variable 'tzname'. [bug introduced in coreutils-8.24]
- stty --help no longer outputs extraneous gettext header lines
- for translated languages. [bug introduced in coreutils-8.24]
+ nl now resets numbering for each page section rather than just for each page.
+ [This bug was present in "the beginning".]
- seq now immediately exits upon write errors.
- [This bug was present in "the beginning".]
+ stty --help no longer outputs extraneous gettext header lines
+ for translated languages. [bug introduced in coreutils-8.24]
- yes now handles short writes, rather than assuming all writes complete.
- [bug introduced in coreutils-8.24]
+ seq now immediately exits upon write errors.
+ [This bug was present in "the beginning".]
+
+ yes now handles short writes, rather than assuming all writes complete.
+ [bug introduced in coreutils-8.24]
** Changes in behavior
- seq no longer accepts 0 value as increment, and now also rejects NaN
- values for any argument.
+ seq no longer accepts 0 value as increment, and now also rejects NaN
+ values for any argument.
- stat now outputs nanosecond information for time stamps even if
- they are out of localtime range.
+ stat now outputs nanosecond information for time stamps even if
+ they are out of localtime range.
- sort, tail, and uniq now support traditional usage like 'sort +2'
- and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later.
- The 2008 edition of POSIX dropped the requirement that arguments
- like '+2' must be treated as file names.
+ sort, tail, and uniq now support traditional usage like 'sort +2'
+ and 'tail +10' on systems conforming to POSIX 1003.1-2008 and later.
+ The 2008 edition of POSIX dropped the requirement that arguments
+ like '+2' must be treated as file names.
** Improvements
- stat and tail now know about "prl_fs" (a parallels file system),
- "m1fs" (a Plexistor file system), "wslfs" (Windows Subsystem for Linux),
- and "smb2". stat -f --format=%T now reports the file system type, and
- tail -f uses polling for "prl_fs" and "smb2", inotify for "m1fs",
- and attempts inotify for "wslfs".
+ stat and tail now know about "prl_fs" (a parallels file system),
+ "m1fs" (a Plexistor file system), "wslfs" (Windows Subsystem for Linux),
+ and "smb2". stat -f --format=%T now reports the file system type, and
+ tail -f uses polling for "prl_fs" and "smb2", inotify for "m1fs",
+ and attempts inotify for "wslfs".
* Noteworthy changes in release 8.25 (2016-01-20) [stable]
diff --git a/gnulib b/gnulib
-Subproject 841c4fa800b4c5c930c3350e5a9a164b204a79c
+Subproject 6835fc458f30b94f15d69c35a79cbc2dfabe2d0
diff --git a/tests/init.sh b/tests/init.sh
index ee0802241..97e4e4ba5 100755
--- a/tests/init.sh
+++ b/tests/init.sh
@@ -308,13 +308,19 @@ if diff_out_=`exec 2>/dev/null; diff -u "$0" "$0" < /dev/null` \
fi
}
fi
-elif diff_out_=`exec 2>/dev/null; diff -c "$0" "$0" < /dev/null`; then
+elif
+ for diff_opt_ in -U3 -c '' no; do
+ test "$diff_opt_" = no && break
+ diff_out_=`exec 2>/dev/null; diff $diff_opt_ "$0" "$0" </dev/null` && break
+ done
+ test "$diff_opt_" != no
+then
if test -z "$diff_out_"; then
- compare_ () { diff -c "$@"; }
+ compare_ () { diff $diff_opt_ "$@"; }
else
compare_ ()
{
- if diff -c "$@" > diff.out; then
+ if diff $diff_opt_ "$@" > diff.out; then
# No differences were found, but AIX and HP-UX 'diff' produce output
# "No differences encountered" or "There are no differences between the
# files.". Hide this output.
@@ -466,7 +472,6 @@ setup_ ()
fi
initial_cwd_=$PWD
- fail=0
pfx_=`testdir_prefix_`
test_dir_=`mktempd_ "$initial_cwd_" "$pfx_-$ME_.XXXX"` \
@@ -550,8 +555,9 @@ mktempd_ ()
# Disallow any trailing slash on specified destdir:
# it would subvert the post-mktemp "case"-based destdir test.
case $destdir_ in
- /) ;;
+ / | //) destdir_slash_=$destdir;;
*/) fail_ "invalid destination dir: remove trailing slash(es)";;
+ *) destdir_slash_=$destdir_/;;
esac
case $template_ in
@@ -561,20 +567,17 @@ mktempd_ ()
esac
# First, try to use mktemp.
- d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` \
- || fail=1
+ d=`unset TMPDIR; { mktemp -d -t -p "$destdir_" "$template_"; } 2>/dev/null` &&
# The resulting name must be in the specified directory.
- case $d in "$destdir_"*);; *) fail=1;; esac
+ case $d in "$destdir_slash_"*) :;; *) false;; esac &&
# It must have created the directory.
- test -d "$d" || fail=1
+ test -d "$d" &&
# It must have 0700 permissions. Handle sticky "S" bits.
- perms=`ls -dgo "$d" 2>/dev/null|tr S -` || fail=1
- case $perms in drwx------*) ;; *) fail=1;; esac
-
- test $fail = 0 && {
+ perms=`ls -dgo "$d" 2>/dev/null` &&
+ case $perms in drwx--[-S]---*) :;; *) false;; esac && {
echo "$d"
return
}
@@ -593,7 +596,7 @@ mktempd_ ()
i_=1
while :; do
X_=`rand_bytes_ $nx_`
- candidate_dir_="$destdir_/$base_template_$X_"
+ candidate_dir_="$destdir_slash_$base_template_$X_"
err_=`mkdir -m 0700 "$candidate_dir_" 2>&1` \
&& { echo "$candidate_dir_"; return; }
test $MAX_TRIES_ -le $i_ && break;