summaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2012-02-04 11:50:53 -0700
committerEric Blake <eblake@redhat.com>2012-03-15 10:28:40 -0600
commit5e264bf248128735aaba4e368f3875680d2ca438 (patch)
tree7abce99252f01893a3f0d24cdd93e4836ac01de8 /NEWS
parenta84286ce7a2e7722eb38280bcbca7fabc647be95 (diff)
downloadcoreutils-5e264bf248128735aaba4e368f3875680d2ca438.tar.xz
realpath: fix problems with root handling
When --relative-base is /, all other paths should be treated as relative (except for // where it matters). Also, on platforms like Cygwin where / and // are distinct, realpath was incorrectly collapsing // into /. http://debbugs.gnu.org/10472. * src/realpath.c (path_prefix, path_common_prefix): Treat / and // as having no common match. (relpath): Allow for no match even without --relative-base. * NEWS: Document this.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS5
1 files changed, 5 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index f783afb15..e9b3d2056 100644
--- a/NEWS
+++ b/NEWS
@@ -57,6 +57,11 @@ GNU coreutils NEWS -*- outline -*-
surprising rename no-op behavior). Now, mv handles this case by skipping
the usually-useless rename and simply unlinking A.
+ realpath no longer mishandles a root directory. This was most
+ noticeable on platforms where // is a different directory than /,
+ but could also be observed with --relative-base=/ or
+ --relative-to=/. [bug since the beginning, in 8.15]
+
** Improvements
ls can be much more efficient, especially with large directories on file