diff mbox series

fetch2: fix unpack of a single zstd file

Message ID 20241124092850.742383-1-pascal.eberhard@gmail.com
State Accepted, archived
Commit 5881ca0e0d53937cd25a57ff682a3b7577b0b7f8
Headers show
Series fetch2: fix unpack of a single zstd file | expand

Commit Message

pascal.eberhard@gmail.com Nov. 24, 2024, 9:28 a.m. UTC
From: Pascal Eberhard <pascal.eberhard@se.com>

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.

Signed-off-by: Pascal Eberhard <pascal.eberhard@se.com>
---
 lib/bb/fetch2/__init__.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/lib/bb/fetch2/__init__.py b/lib/bb/fetch2/__init__.py
index 7ee12f452..f79e278b1 100644
--- a/lib/bb/fetch2/__init__.py
+++ b/lib/bb/fetch2/__init__.py
@@ -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