summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpk <pk@NetBSD.org>2002-05-07 12:22:23 +0000
committerpk <pk@NetBSD.org>2002-05-07 12:22:23 +0000
commita4a641e5beb7bf79a879ecf443d535ff41efe478 (patch)
tree07bb69814f313bc203361f1d419615ba9b202a45
parent2ba24b706f5bd5cce6bef32123c665beeddf2000 (diff)
Stop directory entry search if d_reclen == 0.
-rw-r--r--usr.sbin/installboot/ffs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.sbin/installboot/ffs.c b/usr.sbin/installboot/ffs.c
index 6205929f590..accb5216313 100644
--- a/usr.sbin/installboot/ffs.c
+++ b/usr.sbin/installboot/ffs.c
@@ -1,4 +1,4 @@
-/* $NetBSD: ffs.c,v 1.3 2002/05/02 13:03:32 lukem Exp $ */
+/* $NetBSD: ffs.c,v 1.4 2002/05/07 12:22:23 pk Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
#include <sys/cdefs.h>
#if defined(__RCSID) && !defined(__lint)
-__RCSID("$NetBSD: ffs.c,v 1.3 2002/05/02 13:03:32 lukem Exp $");
+__RCSID("$NetBSD: ffs.c,v 1.4 2002/05/07 12:22:23 pk Exp $");
#endif /* !__lint */
#include <sys/param.h>
@@ -275,6 +275,8 @@ ffs_findstage2_ino(ib_params *params, void *_ino,
*((uint32_t *)_ino) = ino;
return (2);
}
+ if (de->d_reclen == 0)
+ break;
de = (struct direct *)((char *)de + de->d_reclen);
}