mirror of
https://git.yoctoproject.org/poky
synced 2026-04-20 00:32:13 +02:00
filemap: fix skip logic
Fixed bug in processing 'skip' parameter: don't read input file if end of bmap block is less than skip Simplified logic of positioning to the start of data inside a partially skipped bmap block. (From OE-Core rev: c19f78a0713c8ac9d28b78f86c6d7b96157788f0) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
0dbe1c7880
commit
ce7895a61c
@@ -545,11 +545,14 @@ def sparse_copy(src_fname, dst_fname, offset=0, skip=0, api=None):
|
||||
start = first * fmap.block_size
|
||||
end = (last + 1) * fmap.block_size
|
||||
|
||||
if skip >= end:
|
||||
continue
|
||||
|
||||
if start < skip < end:
|
||||
fmap._f_image.seek(skip, os.SEEK_SET)
|
||||
else:
|
||||
fmap._f_image.seek(start, os.SEEK_SET)
|
||||
dst_file.seek(offset + start, os.SEEK_SET)
|
||||
start = skip
|
||||
|
||||
fmap._f_image.seek(start, os.SEEK_SET)
|
||||
dst_file.seek(offset + start - skip, os.SEEK_SET)
|
||||
|
||||
chunk_size = 1024 * 1024
|
||||
to_read = end - start
|
||||
|
||||
Reference in New Issue
Block a user