Thanks, I installed that into Gnulib, along with the attached cleanup patch.
>From f62317186649b13b32cf636087f6a57a3f3c3805 Mon Sep 17 00:00:00 2001
From: Paul Eggert <egg...@cs.ucla.edu>
Date: Mon, 8 Oct 2018 16:53:59 -0700
Subject: [PATCH] fts: cleanup after FTS_NOATIME removal
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* lib/fts_.h (FTS_VERBATIM, FTS_OPTIONMASK, FTS_NAMEONLY)
(FTS_STOP): Shrink to minimal values.  We don’t need to
worry about binary compatibility in Gnulib, and the old way
of doing things had a hole in the user options that caused
FTS_OPTIONMASK to not work as desired.
---
 ChangeLog  |  9 +++++++++
 lib/fts_.h | 10 ++++------
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index f49c41dcb..6161c05b6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2018-10-08  Paul Eggert  <egg...@cs.ucla.edu>
+
+	fts: cleanup after FTS_NOATIME removal
+	* lib/fts_.h (FTS_VERBATIM, FTS_OPTIONMASK, FTS_NAMEONLY)
+	(FTS_STOP): Shrink to minimal values.  We don’t need to
+	worry about binary compatibility in Gnulib, and the old way
+	of doing things had a hole in the user options that caused
+	FTS_OPTIONMASK to not work as desired.
+
 2018-10-08  Bernhard Voelker  <m...@bernhard-voelker.de>
 
 	fts: remove FTS_NOATIME
diff --git a/lib/fts_.h b/lib/fts_.h
index 6188122fd..a34a296c0 100644
--- a/lib/fts_.h
+++ b/lib/fts_.h
@@ -149,16 +149,14 @@ typedef struct {
      dirent.d_type data.  */
 # define FTS_DEFER_STAT         0x0400
 
-/* 0x0800 unused, was non-working FTS_NOATIME */
-
   /* Use this flag to disable stripping of trailing slashes
      from input path names during fts_open initialization.  */
-# define FTS_VERBATIM   0x1000
+# define FTS_VERBATIM   0x0800
 
-# define FTS_OPTIONMASK 0x1fff          /* valid user option mask */
+# define FTS_OPTIONMASK 0x0fff          /* valid user option mask */
 
-# define FTS_NAMEONLY   0x2000          /* (private) child names only */
-# define FTS_STOP       0x4000          /* (private) unrecoverable error */
+# define FTS_NAMEONLY   0x1000          /* (private) child names only */
+# define FTS_STOP       0x2000          /* (private) unrecoverable error */
         int fts_options;                /* fts_open options, global flags */
 
         /* Map a directory's device number to a boolean.  The boolean is
-- 
2.17.1

Reply via email to