From: Jim Meyering Date: Tue, 16 Aug 2011 18:11:51 +0000 (+0200) Subject: maint: fts.c: move __opendir2 #define "up" out of function body X-Git-Tag: v0.1~2001 X-Git-Url: http://erislabs.net/gitweb/?p=gnulib.git;a=commitdiff_plain;h=fac94349f25305566277d15b965fa8f4efe66613 maint: fts.c: move __opendir2 #define "up" out of function body * lib/fts.c (__opendir2): Move "up". No semantic change. --- 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;