2007-11-08  James Youngman <jay@gnu.org>

	* ftsfind.c (process_all_startpoints): Set
	state.starting_path_length for every pathname argument.
	This fixes Savannah bug #18222.

Index: ftsfind.c
===================================================================
RCS file: /sources/findutils/findutils/find/ftsfind.c,v
retrieving revision 1.15
diff -u -u -r1.15 ftsfind.c
--- ftsfind.c	20 Aug 2006 18:18:42 -0000	1.15
+++ ftsfind.c	8 Nov 2006 10:12:40 -0000
@@ -281,9 +281,6 @@
       state.type = mode = statbuf.st_mode;
     }
 
-  if (0 == ent->fts_level && (0u == state.starting_path_length))
-    state.starting_path_length = ent->fts_pathlen;
-
   if (mode)
     {
       if (!digest_mode(mode, ent->fts_path, ent->fts_name, &statbuf, 0))
@@ -411,9 +408,10 @@
   /* figure out how many start points there are */
   for (i = 0; i < argc && !looks_like_expression(argv[i], true); i++)
     {
+      state.starting_path_length = strlen(argv[i]);
       find(argv[i]);
     }
-  
+
   if (i == 0)
     {
       /* 
