summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs.c b/fs.c
index 15a4d35..7c6d904 100644
--- a/fs.c
+++ b/fs.c
@@ -61,7 +61,7 @@ balloc(uint dev)
readsb(dev, &sb);
for(b = 0; b < sb.size; b += BPB){
bp = bread(dev, BBLOCK(b, sb.ninodes));
- for(bi = 0; bi < BPB; bi++){
+ for(bi = 0; bi < BPB && bi < (sb.size - b); bi++){
m = 1 << (bi % 8);
if((bp->data[bi/8] & m) == 0){ // Is block free?
bp->data[bi/8] |= m; // Mark block in use on disk.