insane, license: Trap MalformedUrl exceptions when parsing LIC_FILES_CHKSUM
bb.fetch.decodeurl() will throw if it doesn't like the look of the URL that it's given. (Bitbake's idea of what constitutes a valid URL is somewhat idiosyncratic so it is fairly easy to trip over this by mistake when writing a recipe.) If these exceptions are allowed to propagate all the way up to better_exec() then we will get a large amount of python stack trace spew when they are finally caught. Avoid that by catching them locally and throwing bb.build.FuncFailed() with a suitable explanation instead. (From OE-Core rev: ef35e164c62d89806367b822e3baeff482ec237f) Signed-off-by: Phil Blundell <philb@gnu.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
3635f1fe3b
commit
790b75f985
|
@ -594,7 +594,10 @@ def package_qa_check_license(workdir, d):
|
|||
srcdir = d.getVar('S', True)
|
||||
|
||||
for url in lic_files.split():
|
||||
(type, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
|
||||
try:
|
||||
(type, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
|
||||
except bb.fetch.MalformedUrl:
|
||||
raise bb.build.FuncFailed( pn + ": LIC_FILES_CHKSUM contains an invalid URL: " + url)
|
||||
srclicfile = os.path.join(srcdir, path)
|
||||
if not os.path.isfile(srclicfile):
|
||||
raise bb.build.FuncFailed( pn + ": LIC_FILES_CHKSUM points to an invalid file: " + srclicfile)
|
||||
|
|
|
@ -228,7 +228,10 @@ def find_license_files(d):
|
|||
return lic_files_paths
|
||||
|
||||
for url in lic_files.split():
|
||||
(type, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
|
||||
try:
|
||||
(type, host, path, user, pswd, parm) = bb.fetch.decodeurl(url)
|
||||
except bb.fetch.MalformedUrl:
|
||||
raise bb.build.FuncFailed("%s: LIC_FILES_CHKSUM contains an invalid URL: %s" % (d.getVar('PF', True), url))
|
||||
# We want the license filename and path
|
||||
srclicfile = os.path.join(srcdir, path)
|
||||
lic_files_paths.append((os.path.basename(path), srclicfile))
|
||||
|
|
Loading…
Reference in New Issue