From fac94349f25305566277d15b965fa8f4efe66613 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Tue, 16 Aug 2011 20:11:51 +0200 Subject: [PATCH] maint: fts.c: move __opendir2 #define "up" out of function body * lib/fts.c (__opendir2): Move "up". No semantic change. --- ChangeLog | 3 +++ lib/fts.c | 28 +++++++++++++--------------- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5bc3bd8cf..e88b4023f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2011-08-19 Jim Meyering + maint: fts.c: move __opendir2 #define "up" out of function body + * lib/fts.c (__opendir2): Move "up". No semantic change. + maint: fts.c: remove #if-0'd FTS_WHITEOUT code * lib/fts.c: Remove #if-0'd FTS_WHITEOUT code. It's been #if-0'd out for a long time and besides was useful only on BSD systems. diff --git a/lib/fts.c b/lib/fts.c index c96dd9d1c..62ce38fea 100644 --- a/lib/fts.c +++ b/lib/fts.c @@ -1192,6 +1192,17 @@ set_stat_type (struct stat *st, unsigned int dtype) st->st_mode = type; } +# define __opendir2(file, flag) \ + opendirat((! ISSET(FTS_NOCHDIR) && ISSET(FTS_CWDFD) \ + ? sp->fts_cwd_fd : AT_FDCWD), \ + file, \ + (((ISSET(FTS_PHYSICAL) \ + && ! (ISSET(FTS_COMFOLLOW) \ + && cur->fts_level == FTS_ROOTLEVEL)) \ + ? O_NOFOLLOW : 0) \ + | (ISSET (FTS_NOATIME) ? O_NOATIME : 0)), \ + &dir_fd) + /* * This is the tricky part -- do not casually change *anything* in here. The * idea is to build the linked list of entries that are used by fts_children @@ -1229,21 +1240,8 @@ fts_build (register FTS *sp, int type) /* Set current node pointer. */ cur = sp->fts_cur; - /* - * Open the directory for reading. If this fails, we're done. - * If being called from fts_read, set the fts_info field. - */ -# define __opendir2(file, flag) \ - opendirat((! ISSET(FTS_NOCHDIR) && ISSET(FTS_CWDFD) \ - ? sp->fts_cwd_fd : AT_FDCWD), \ - file, \ - (((ISSET(FTS_PHYSICAL) \ - && ! (ISSET(FTS_COMFOLLOW) \ - && cur->fts_level == FTS_ROOTLEVEL)) \ - ? O_NOFOLLOW : 0) \ - | (ISSET (FTS_NOATIME) ? O_NOATIME : 0)), \ - &dir_fd) - + /* Open the directory for reading. If this fails, we're done. + If being called from fts_read, set the fts_info field. */ if ((dirp = __opendir2(cur->fts_accpath, oflag)) == NULL) { if (type == BREAD) { cur->fts_info = FTS_DNR; -- 2.11.0