Patchwork [bitbake-devel,master] fetch2: fix unpack of .xz files

mail settings
Submitter André Draszik
Date July 30, 2013, 12:56 p.m.
Message ID <>
Download mbox | patch
Permalink /patch/54791/
State Accepted
Commit 2cd2d0a48e12ab4358fb967eaf7a56c17993f48d
Headers show


André Draszik - July 30, 2013, 12:56 p.m.
If a file ends with .xz, it currently gets overwritten during unpack:
The decompress command for .xz files is:
  'xz -dc %s > %s' % (file, efile)
and as efile == file, we end up overwriting file (the source).

Fix this by adding .xz to the list of suffixes that that need to
be removed from a file name for an extract command, leaving the
bare file name. Now, for a given file foo.xz,
file == foo.xz and efile == foo, similar to how .gz .bz2 and .Z
files are treated.

Signed-off-by: André Draszik <>
 lib/bb/fetch2/ | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


diff --git a/lib/bb/fetch2/ b/lib/bb/fetch2/
index 6211cd7..451d104 100644
--- a/lib/bb/fetch2/
+++ b/lib/bb/fetch2/
@@ -1157,7 +1157,7 @@  class FetchMethod(object):
                      (file, urldata.parm.get('unpack')))
         dots = file.split(".")
-        if dots[-1] in ['gz', 'bz2', 'Z']:
+        if dots[-1] in ['gz', 'bz2', 'Z', 'xz']:
             efile = os.path.join(rootdir, os.path.basename('.'.join(dots[0:-1])))
             efile = file