From: Paul Eggleton Date: Tue, 22 Dec 2015 04:02:59 +0000 (+1300) Subject: recipetool: create: prevent attempting to unpack entire DL_DIR X-Git-Tag: 2016-4~1843 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=7e63a672517518644a37ce006e05b5494c29cf6e;p=openembedded-core.git recipetool: create: prevent attempting to unpack entire DL_DIR If you specify a URL ending in /, BitBake's fetcher returns a localpath of ${DL_DIR}, and if you then try to unpack that it will attempt to copy the entire DL_DIR contents to the destination - which at least on my system filled my entire /tmp. Obviously we should fix the fetcher, but at least detect and stop that from happening here for now. Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- diff --git a/scripts/lib/scriptutils.py b/scripts/lib/scriptutils.py index 4dd7ef2a0d..69e76d8ea2 100644 --- a/scripts/lib/scriptutils.py +++ b/scripts/lib/scriptutils.py @@ -86,6 +86,10 @@ def fetch_uri(d, uri, destdir, srcrev=None): ud = fetcher.ud[u] ud.ignore_checksums = True fetcher.download() + for u in fetcher.ud: + ud = fetcher.ud[u] + if ud.localpath.rstrip(os.sep) == localdata.getVar('DL_DIR', True).rstrip(os.sep): + raise Exception('Local path is download directory - please check that the URI "%s" is correct' % uri) fetcher.unpack(destdir) for u in fetcher.ud: ud = fetcher.ud[u]