aboutsummaryrefslogtreecommitdiff
path: root/lib/sqfshelper
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-09-23 14:17:02 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-09-23 14:17:02 +0200
commit57da296d0e31b87040510fa49eb75e950a4f0d67 (patch)
tree251332ee0c0d5bf8ce57863532c52d970841b7a0 /lib/sqfshelper
parentbcb5a6e74ac97004acc9a4937285f001b895e0d7 (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.c12
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);