diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2006-07-11 17:19:48 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2006-07-11 17:19:48 +0000 |
commit | 2b6236d156b394227e41b0d664cf600b69db9403 (patch) | |
tree | 08467d898c62dfb113adbc671fdb9de956159792 /lib/savedir.c | |
parent | 888ee9b8d99f7ed10f04b387eaf6e1477369c0fa (diff) | |
download | coreutils-2b6236d156b394227e41b0d664cf600b69db9403.tar.xz |
Sync from gnulib.
Diffstat (limited to 'lib/savedir.c')
-rw-r--r-- | lib/savedir.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/savedir.c b/lib/savedir.c index c68547054..4b0702480 100644 --- a/lib/savedir.c +++ b/lib/savedir.c @@ -29,11 +29,9 @@ #include <errno.h> -#if HAVE_DIRENT_H -# include <dirent.h> -#else -# define dirent direct -# include <ndir.h> +#include <dirent.h> +#ifndef _D_EXACT_NAMLEN +# define _D_EXACT_NAMLEN(dp) strlen ((dp)->d_name) #endif #include <stddef.h> @@ -81,7 +79,7 @@ savedirstream (DIR *dirp) entry = dp->d_name; if (entry[entry[0] != '.' ? 0 : entry[1] != '.' ? 1 : 2] != '\0') { - size_t entry_size = strlen (entry) + 1; + size_t entry_size = _D_EXACT_NAMLEN (dp) + 1; if (used + entry_size < used) xalloc_die (); if (allocated <= used + entry_size) |