Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Mar 2014 22:47:11 +0000 (UTC)
From:      Jilles Tjoelker <jilles@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r262872 - head/lib/libc/gen
Message-ID:  <201403062247.s26MlBd3043649@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jilles
Date: Thu Mar  6 22:47:11 2014
New Revision: 262872
URL: http://svnweb.freebsd.org/changeset/base/262872

Log:
  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

Modified:
  head/lib/libc/gen/fts.c

Modified: head/lib/libc/gen/fts.c
==============================================================================
--- head/lib/libc/gen/fts.c	Thu Mar  6 21:47:22 2014	(r262871)
+++ head/lib/libc/gen/fts.c	Thu Mar  6 22:47:11 2014	(r262872)
@@ -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;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201403062247.s26MlBd3043649>