Implement nblks() that returns the number of blocks in the store file - dedup - deduplicating backup program
HTML git clone git://bitreich.org/dedup/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/dedup/
DIR Log
DIR Files
DIR Refs
DIR Tags
DIR README
DIR LICENSE
---
DIR commit bf3abd9cb6cf698a89cddc3fbd635cf6d6bed45c
DIR parent 18310c86771d40e60642614aa9b99453472484f9
HTML Author: sin <sin@2f30.org>
Date: Wed, 21 Mar 2018 11:10:03 +0000
Implement nblks() that returns the number of blocks in the store file
Diffstat:
M dedup.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
---
DIR diff --git a/dedup.c b/dedup.c
@@ -191,6 +191,12 @@ lookup_blk(struct blk *b1, uint64_t *blkidx)
return -1;
}
+uint64_t
+nblks(void)
+{
+ return lseek(sfd, 0, SEEK_END) / sizeof(struct blk);
+}
+
void
dedup(int fd)
{
@@ -215,11 +221,7 @@ dedup(int fd)
ent = grow_ent(ent, ent->nblks + 1);
if (lookup_blk(&blk, &blkidx) == -1) {
- off_t offs;
-
- offs = lseek(sfd, 0, SEEK_END);
- offs /= sizeof(blk);
- ent->blks[ent->nblks++] = offs;
+ ent->blks[ent->nblks++] = nblks();
append_blk(&blk);
} else {