From 567186f995302a095a771baede4ff5034d1d1862 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Wed, 22 Mar 2017 15:42:28 +0200 Subject: wic: fix bug in sparse_copy sparse_copy creates output file that is smaller than input file when input file ends with unmapped blocks. Used truncate() when output file is created to ensure the size of output file will always be equal to the size of input file. Signed-off-by: Ed Bartosh Signed-off-by: Richard Purdie --- scripts/lib/wic/filemap.py | 1 + 1 file changed, 1 insertion(+) (limited to 'scripts/lib') diff --git a/scripts/lib/wic/filemap.py b/scripts/lib/wic/filemap.py index 162603ed0a..080668e7c2 100644 --- a/scripts/lib/wic/filemap.py +++ b/scripts/lib/wic/filemap.py @@ -537,6 +537,7 @@ def sparse_copy(src_fname, dst_fname, offset=0, skip=0): dst_file = open(dst_fname, 'r+b') except IOError: dst_file = open(dst_fname, 'wb') + dst_file.truncate(os.path.getsize(src_fname)) for first, last in fmap.get_mapped_ranges(0, fmap.blocks_cnt): start = first * fmap.block_size -- cgit 1.2.3-korg