From 047d37633b2d451ee4f53c635d3f48b9b0732e44 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Thu, 20 Jul 2017 16:48:09 +0200 Subject: recipetool: create: ensure meaningful error for malformed tarballs If you pointed recipetool at a URL that should be a tarball e.g. https://tls.mbed.org/download/start/mbedtls-2.4.2-apache.tgz but instead it returns an HTML page, we try to unpack it, gzip complains but the operation doesn't seem to fail - instead we just get back an empty source tree. Change the checks to account for this - if the source tree is empty, check if the downloaded file in DL_DIR looks like an HTML file and error accordingly if it is. If it's not, error out anyway because no source was unpacked and it should have been (otherwise we just blindly set up EXTERNALSRC for this which is pointless). Fixes an aspect of [YOCTO #11407]. (From OE-Core rev: 8496113b63d5a5d1f99056610c0fdb972a6200d4) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- scripts/lib/recipetool/create.py | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'scripts/lib/recipetool') diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py index 8e63580db7..923c336849 100644 --- a/scripts/lib/recipetool/create.py +++ b/scripts/lib/recipetool/create.py @@ -462,10 +462,16 @@ def create_recipe(args): srcsubdir = dirlist[0] srctree = os.path.join(srctree, srcsubdir) else: - with open(singleitem, 'r', errors='surrogateescape') as f: - if '