summaryrefslogtreecommitdiffstats
path: root/lib/libc/gen/readdir.c
diff options
context:
space:
mode:
authordeischen <deischen@FreeBSD.org>2000-12-06 03:15:49 +0000
committerdeischen <deischen@FreeBSD.org>2000-12-06 03:15:49 +0000
commitcf92dabe14c7581217daf96f6257caae8c56b826 (patch)
tree0dd5c36710eb675e55c9d6b12fdea35f32c5b68e /lib/libc/gen/readdir.c
parent507950431dac1887fe7f639efde6d9a3bcdb790f (diff)
downloadFreeBSD-src-cf92dabe14c7581217daf96f6257caae8c56b826.zip
FreeBSD-src-cf92dabe14c7581217daf96f6257caae8c56b826.tar.gz
Cleanup XXXdir functions to eliminate global hash table of
telldir positions. This will allow (future) locking on a per-DIR basis (for MT-safety). For now, this change does the following: o Remove the hash table from telldir.c. Recode to use queue macros. o Remove 'const' from 'telldir(const DIR *)'. o Remove 'register' variables as suggested in a recent thread. No response from: -current
Diffstat (limited to 'lib/libc/gen/readdir.c')
-rw-r--r--lib/libc/gen/readdir.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/libc/gen/readdir.c b/lib/libc/gen/readdir.c
index 14cc001..1f6f84e 100644
--- a/lib/libc/gen/readdir.c
+++ b/lib/libc/gen/readdir.c
@@ -52,9 +52,9 @@ static char sccsid[] = "@(#)readdir.c 8.3 (Berkeley) 9/29/94";
*/
struct dirent *
readdir(dirp)
- register DIR *dirp;
+ DIR *dirp;
{
- register struct dirent *dp;
+ struct dirent *dp;
for (;;) {
if (dirp->dd_loc >= dirp->dd_size) {
@@ -90,9 +90,10 @@ readdir_r(dirp, entry, result)
struct dirent **result;
{
struct dirent *dp;
- int ret, saved_errno;
-
+ int saved_errno;
#ifdef _THREAD_SAFE
+ int ret;
+
if ((ret = _FD_LOCK(dirp->dd_fd, FD_READ, NULL)) != 0)
return (ret);
#endif
OpenPOWER on IntegriCloud