diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-09-23 14:17:02 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-09-23 14:17:02 +0200 |
commit | 57da296d0e31b87040510fa49eb75e950a4f0d67 (patch) | |
tree | 251332ee0c0d5bf8ce57863532c52d970841b7a0 /lib/sqfshelper | |
parent | bcb5a6e74ac97004acc9a4937285f001b895e0d7 (diff) |
Replace user pointer in sqfs_block_t with explicit inode pointer
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/sqfshelper')
-rw-r--r-- | lib/sqfshelper/data_writer.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/sqfshelper/data_writer.c b/lib/sqfshelper/data_writer.c index 9f418f1..a545896 100644 --- a/lib/sqfshelper/data_writer.c +++ b/lib/sqfshelper/data_writer.c @@ -113,7 +113,6 @@ static size_t deduplicate_blocks(data_writer_t *data, size_t count) static int block_callback(void *user, sqfs_block_t *blk) { - sqfs_inode_generic_t *inode = blk->user; data_writer_t *data = user; size_t start, count; uint64_t offset; @@ -144,7 +143,7 @@ static int block_callback(void *user, sqfs_block_t *blk) data->stats.frag_blocks_written += 1; } else { - inode->block_sizes[blk->index] = htole32(out); + blk->inode->block_sizes[blk->index] = htole32(out); data->stats.blocks_written += 1; } @@ -166,7 +165,7 @@ static int block_callback(void *user, sqfs_block_t *blk) start = deduplicate_blocks(data, count); offset = data->blocks[start].offset; - sqfs_inode_set_file_block_start(inode, offset); + sqfs_inode_set_file_block_start(blk->inode, offset); if (start < data->file_start) { offset = start + count; @@ -222,7 +221,6 @@ static int flush_fragment_block(data_writer_t *data) static int handle_fragment(data_writer_t *data, sqfs_block_t *frag) { - sqfs_inode_generic_t *inode = frag->user; size_t i, size, new_sz; uint64_t signature; void *new; @@ -232,7 +230,7 @@ static int handle_fragment(data_writer_t *data, sqfs_block_t *frag) for (i = 0; i < data->frag_list_num; ++i) { if (data->frag_list[i].signature == signature) { - sqfs_inode_set_frag_location(inode, + sqfs_inode_set_frag_location(frag->inode, data->frag_list[i].index, data->frag_list[i].offset); free(frag); @@ -282,7 +280,7 @@ static int handle_fragment(data_writer_t *data, sqfs_block_t *frag) data->frag_list[data->frag_list_num].signature = signature; data->frag_list_num += 1; - sqfs_inode_set_frag_location(inode, data->num_fragments, + sqfs_inode_set_frag_location(frag->inode, data->num_fragments, data->frag_block->size); data->frag_block->flags |= (frag->flags & SQFS_BLK_DONT_COMPRESS); @@ -314,7 +312,7 @@ static int add_sentinel_block(data_writer_t *data, sqfs_inode_generic_t *inode, return -1; } - blk->user = inode; + blk->inode = inode; blk->flags = SQFS_BLK_DONT_COMPRESS | SQFS_BLK_DONT_CHECKSUM | flags; return sqfs_block_processor_enqueue(data->proc, blk); |