aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJilles Tjoelker <jilles@FreeBSD.org>2014-03-06 22:47:11 +0000
committerJilles Tjoelker <jilles@FreeBSD.org>2014-03-06 22:47:11 +0000
commitc8a17392cb0f085c3a93fb16c1bda3ced2c845f8 (patch)
treecde5f0bbd126633b44816bfb2828117d18278816 /lib
parent5b4e50ae3350e8b6738438e9821b340c04d5db0c (diff)
downloadsrc-c8a17392cb0f085c3a93fb16c1bda3ced2c845f8.tar.gz
src-c8a17392cb0f085c3a93fb16c1bda3ced2c845f8.zip
fts: Don't abort if an empty pathname is given.
Make fts_open(3) treat an empty pathname like any other pathname that cannot be lstatted because of [ENOENT]. It is rather confusing if rm -rf file1 "" file2 does not remove file1 and file2. PR: bin/187264 MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=262872
Diffstat (limited to 'lib')
-rw-r--r--lib/libc/gen/fts.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/lib/libc/gen/fts.c b/lib/libc/gen/fts.c
index 1724f9c0fd2b..7635fbc35263 100644
--- a/lib/libc/gen/fts.c
+++ b/lib/libc/gen/fts.c
@@ -161,11 +161,7 @@ fts_open(argv, options, compar)
/* Allocate/initialize root(s). */
for (root = NULL, nitems = 0; *argv != NULL; ++argv, ++nitems) {
- /* Don't allow zero-length paths. */
- if ((len = strlen(*argv)) == 0) {
- errno = ENOENT;
- goto mem3;
- }
+ len = strlen(*argv);
p = fts_alloc(sp, *argv, len);
p->fts_level = FTS_ROOTLEVEL;