From: Paul Eggert Date: Mon, 10 Nov 2014 23:43:22 +0000 (-0800) Subject: fts: port to C89 X-Git-Tag: v1.0~7261 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=5cb103952a80692015109260f296779c4ae049a4;p=gnulib.git fts: port to C89 Problem reported for MSVC 16 by Gisle Vanem in: http://lists.gnu.org/archive/html/bug-gnulib/2014-11/msg00027.html * lib/fts.c (fts_build): Avoid declaration before statement. --- diff --git a/ChangeLog b/ChangeLog index 28dcc5f548..c95ca87b6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2014-11-10 Paul Eggert + + fts: port to C89 + Problem reported for MSVC 16 by Gisle Vanem in: + http://lists.gnu.org/archive/html/bug-gnulib/2014-11/msg00027.html + * lib/fts.c (fts_build): Avoid declaration before statement. + 2014-11-06 Paul Eggert unistd: port to iOS diff --git a/lib/fts.c b/lib/fts.c index 500e92c6b8..9851c53104 100644 --- a/lib/fts.c +++ b/lib/fts.c @@ -1293,6 +1293,7 @@ fts_build (register FTS *sp, int type) int dir_fd; FTSENT *cur = sp->fts_cur; bool continue_readdir = !!cur->fts_dirp; + size_t max_entries; /* When cur->fts_dirp is non-NULL, that means we should continue calling readdir on that existing DIR* pointer @@ -1354,8 +1355,7 @@ fts_build (register FTS *sp, int type) function. But when no such function is specified, we can read entries in batches that are large enough to help us with inode- sorting, yet not so large that we risk exhausting memory. */ - size_t max_entries = (sp->fts_compar == NULL - ? FTS_MAX_READDIR_ENTRIES : SIZE_MAX); + max_entries = sp->fts_compar ? SIZE_MAX : FTS_MAX_READDIR_ENTRIES; /* * Nlinks is the number of possible entries of type directory in the