diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-12-22 17:02:59 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-12-22 16:44:03 +0000 |
commit | 7e63a672517518644a37ce006e05b5494c29cf6e (patch) | |
tree | 4301fa570c3c091b72be2950714880f370b12f3d /scripts/lib | |
parent | 95d33e90f2d5d9dd5ccc950856b8a939fefb831e (diff) | |
download | openembedded-core-7e63a672517518644a37ce006e05b5494c29cf6e.tar.gz openembedded-core-7e63a672517518644a37ce006e05b5494c29cf6e.tar.bz2 openembedded-core-7e63a672517518644a37ce006e05b5494c29cf6e.zip |
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 <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib')
-rw-r--r-- | scripts/lib/scriptutils.py | 4 |
1 files changed, 4 insertions, 0 deletions
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] |