]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
all: update gnulib submodule and tests/init.sh to latest
authorPádraig Brady <P@draigBrady.com>
Sun, 26 Jun 2016 19:58:41 +0000 (20:58 +0100)
committerPádraig Brady <P@draigBrady.com>
Sun, 26 Jun 2016 19:58:41 +0000 (20:58 +0100)
* gnulib: Update to latest.
* NEWS: Specifically mention the fts readdir() fix
and reindent to standard indentation.
* tests/init.sh: Update from gnulib.

NEWS
gnulib
tests/init.sh

diff --git a/NEWS b/NEWS
index b6c5c06efbba2825f25102a68a52c1ef99eb634a..bfaf2399e0001a4659cc81818150c727efc5e4e8 100644 (file)
--- 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
index 841c4fa800b4c5c930c3350e5a9a164b204a79c8..6835fc458f30b94f15d69c35a79cbc2dfabe2d06 160000 (submodule)
--- a/gnulib
+++ b/gnulib
@@ -1 +1 @@
-Subproject commit 841c4fa800b4c5c930c3350e5a9a164b204a79c8
+Subproject commit 6835fc458f30b94f15d69c35a79cbc2dfabe2d06
index ee0802241ff56f137e770c9a2b3e8339f0f0cdd1..97e4e4ba5e691ab04b376497cdddeabcf2cfa461 100755 (executable)
@@ -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;