bitbake: data: fix exception handling in exported_vars()

Fix a bug where a totally wrong value of a variable would be exported if
an exception happened during d.getVar(). Also, print a warning if an
exception happends instead of silently ignoring it. It would probably be
best just to raise the exception, instead, but use the warning for now
in order to avoid breaking existing builds.

[YOCTO #10393]

(Bitbake rev: f639f06cfa280adcc25438387567966271b9b2c3)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Markus Lehtonen 2016-11-01 17:05:11 +02:00 committed by Richard Purdie
parent 589f08aa85
commit c5f609edbf
1 changed files with 5 additions and 3 deletions

View File

@ -258,11 +258,13 @@ def exported_keys(d):
not d.getVarFlag(key, 'unexport', False))
def exported_vars(d):
for key in exported_keys(d):
k = list(exported_keys(d))
for key in k:
try:
value = d.getVar(key, True)
except Exception:
pass
except Exception as err:
bb.warn("%s: Unable to export ${%s}: %s" % (d.getVar("FILE", True), key, err))
continue
if value is not None:
yield key, str(value)