[git commit master] mkfs_ext2: fix a buglet introduced in last commit

Denys Vlasenko vda.linux at googlemail.com
Sat Oct 17 21:23:45 UTC 2009


commit: http://git.busybox.net/busybox/commit/?id=7d8ab846d1f6044cc6c1fc5e3b1a586a9d78637c
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 util-linux/mkfs_ext2.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/util-linux/mkfs_ext2.c b/util-linux/mkfs_ext2.c
index e4c3e17..41f37c2 100644
--- a/util-linux/mkfs_ext2.c
+++ b/util-linux/mkfs_ext2.c
@@ -112,11 +112,14 @@ static uint32_t has_super(uint32_t x)
 		48828125, 129140163, 244140625, 282475249, 387420489,
 		1162261467, 1220703125, 1977326743, 3486784401/* >2^31 */,
 	};
-	unsigned i;
-	for (i = ARRAY_SIZE(supers); --i >= 0;)
-		if (x == supers[i])
+	const uint32_t *sp = supers + ARRAY_SIZE(supers)-1;
+	while (1) {
+		if (x == *sp)
 			return 1;
-	return 0;
+		if (0 == *sp)
+			return 0;
+		sp--;
+	}
 }
 #endif
 
-- 
1.6.3.3



More information about the busybox-cvs mailing list