diff options
author | spew <devnull@localhost> | 2017-03-21 14:07:18 -0500 |
---|---|---|
committer | spew <devnull@localhost> | 2017-03-21 14:07:18 -0500 |
commit | 8dd9f0e97096abb6ad42c8751b336d8be6dba969 (patch) | |
tree | d546c05a0b9f81fb88a2864f7fd3902ceea5882e /sys/src/cmd/hjfs/fs1.c | |
parent | 1e2d95a8038346d38f1cebeabe0ad64ea874b7fe (diff) |
hjfs: Clear all refs to zero when reaming.
And a couple clarity/formatting changes
Diffstat (limited to 'sys/src/cmd/hjfs/fs1.c')
-rw-r--r-- | sys/src/cmd/hjfs/fs1.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sys/src/cmd/hjfs/fs1.c b/sys/src/cmd/hjfs/fs1.c index 7cec1ff13..5331d34f3 100644 --- a/sys/src/cmd/hjfs/fs1.c +++ b/sys/src/cmd/hjfs/fs1.c @@ -106,8 +106,7 @@ getfree(Fs *fs, uvlong *r) b->refs[j] = 1; *r = l; have = 1; - } - else if(nbsend(fs->freelist, &l) <= 0) + }else if(nbsend(fs->freelist, &l) <= 0) goto found; } if(have) @@ -259,7 +258,7 @@ ream(Fs *fs) b->sb.size = d->size; b->sb.fstart = SUPERBLK + 1; fs->fstart = b->sb.fstart; - b->sb.fend = b->sb.fstart + HOWMANY(b->sb.size * 3, RBLOCK); + b->sb.fend = b->sb.fstart + HOWMANY(b->sb.size * REFSIZ); b->sb.qidpath = DUMPROOTQID + 1; firsti = b->sb.fstart + SUPERBLK / REFPERBLK; lasti = b->sb.fstart + b->sb.fend / REFPERBLK; @@ -267,7 +266,7 @@ ream(Fs *fs) c = getbuf(d, i, TREF, 1); if(c == nil) goto err; - memset(c->refs, 0, sizeof(b->data)); + memset(c->refs, 0, sizeof(c->refs)); if(i >= firsti && i <= lasti){ j = 0; je = REFPERBLK; @@ -760,7 +759,7 @@ trunc(Fs *fs, FLoc *ll, Buf *bd, uvlong size) return -1; if(size >= d->size) goto done; - blk = HOWMANY(size, RBLOCK); + blk = HOWMANY(size); while(blk < NDIRECT){ if(d->db[blk] != 0){ putfree(fs, d->db[blk]); |