diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-12-22 17:02:59 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-01-15 15:41:31 +0000 |
commit | 623e59b103c1edf3211384d26cc0c83cfd424587 (patch) | |
tree | 0683b6f16dd92dd9224ab47e032e9da55b975d96 /scripts | |
parent | d76191cef76c6c4416a5e635a9424192e16c1090 (diff) | |
download | openembedded-core-contrib-623e59b103c1edf3211384d26cc0c83cfd424587.tar.gz |
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.
(From OE-Core master rev: 7e63a672517518644a37ce006e05b5494c29cf6e)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-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 3366882635..e79a195b1f 100644 --- a/scripts/lib/scriptutils.py +++ b/scripts/lib/scriptutils.py @@ -85,6 +85,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] |