--- a/clamonacc/misc/fts.c +++ b/clamonacc/misc/fts.c @@ -744,11 +744,11 @@ static FTSENTRY * if (!ISSET(FTS_SEEDOT) && ISDOT(dp->d_name)) continue; - if ((p = fts_alloc(sp, dp->d_name, _D_EXACT_NAMLEN(dp))) == NULL) + if ((p = fts_alloc(sp, dp->d_name, strlen(dp->d_name))) == NULL) goto mem1; - if (_D_EXACT_NAMLEN(dp) >= maxlen) { /* include space for NUL */ + if (strlen(dp->d_name) >= maxlen) { /* include space for NUL */ oldaddr = sp->fts_path; - if (fts_palloc(sp, _D_EXACT_NAMLEN(dp) + len + 1)) { + if (fts_palloc(sp, strlen(dp->d_name) + len + 1)) { /* * No more memory for path or structures. Save * errno, free up the current structure and the @@ -773,7 +773,7 @@ static FTSENTRY * maxlen = sp->fts_pathlen - len; } - if (len + _D_EXACT_NAMLEN(dp) >= USHRT_MAX) { + if (len + strlen(dp->d_name) >= USHRT_MAX) { /* * In an FTSENT, fts_pathlen is a u_short so it is * possible to wraparound here. If we do, free up @@ -790,7 +790,7 @@ static FTSENTRY * } p->fts_level = level; p->fts_parent = sp->fts_cur; - p->fts_pathlen = len + _D_EXACT_NAMLEN(dp); + p->fts_pathlen = len + strlen(dp->d_name); #if defined FTS_WHITEOUT && 0 if (dp->d_type == DT_WHT) --- a/clamonacc/misc/priv_fts.h +++ b/clamonacc/misc/priv_fts.h @@ -207,14 +207,18 @@ typedef struct _ftsent64 { } FTSENT64; #endif -__BEGIN_DECLS +#ifdef __cplusplus +extern "C" { +#endif FTSENT *_priv_fts_children(FTS *, int); int _priv_fts_close(FTS *); FTS *_priv_fts_open(char *const *, int, int (*)(const FTSENT **, const FTSENT **)); FTSENT *_priv_fts_read(FTS *); -int _priv_fts_set(FTS *, FTSENT *, int) __THROW; -__END_DECLS +int _priv_fts_set(FTS *, FTSENT *, int) __attribute__ ((__nothrow__)); +#ifdef __cplusplus +} +#endif #endif /* fts.h */ #endif