bitbake: fetch2: fix unpack of a single zstd file

do_unpack generates a 'Bitbake Fetcher Error: UnpackError' when
uncompressing a single 'file.zst', zstd command line returns the error
'unexpected end of file', and the input file 'file.zst' becomes empty.

The command line is 'zstd --decompress --stdout file.zst > file.zst'.
So the issue is that the input and output filenames are the same.

Fix the output filename when using zstd for a single file.

(Bitbake rev: 5881ca0e0d53937cd25a57ff682a3b7577b0b7f8)

Signed-off-by: Pascal Eberhard <pascal.eberhard@se.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Pascal Eberhard
2024-11-24 10:28:50 +01:00
committed by Richard Purdie
parent be11cb2979
commit b35dc1a99d

View File

@@ -1518,7 +1518,7 @@ class FetchMethod(object):
(file, urldata.parm.get('unpack')))
base, ext = os.path.splitext(file)
if ext in ['.gz', '.bz2', '.Z', '.xz', '.lz']:
if ext in ['.gz', '.bz2', '.Z', '.xz', '.lz', '.zst']:
efile = os.path.join(rootdir, os.path.basename(base))
else:
efile = file