bitbake: data_smart/BBHandler: Fix SkipParse exception handling
If SkipParse is raised from something which isn't anonymous python, it wasn't being handled correctly. This improves the handling for example from within inline python. (Bitbake rev: 7467d7d66b24cc8f43ab168e65895e7c4aee6092) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
5d968368bc
commit
853d707af5
|
@ -143,6 +143,8 @@ class DataSmart(MutableMapping):
|
||||||
break
|
break
|
||||||
except ExpansionError:
|
except ExpansionError:
|
||||||
raise
|
raise
|
||||||
|
except bb.parse.SkipPackage:
|
||||||
|
raise
|
||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
raise ExpansionError(varname, s, exc)
|
raise ExpansionError(varname, s, exc)
|
||||||
|
|
||||||
|
|
|
@ -153,7 +153,12 @@ def handle(fn, d, include):
|
||||||
if ext != ".bbclass":
|
if ext != ".bbclass":
|
||||||
data.setVar('FILE', abs_fn, d)
|
data.setVar('FILE', abs_fn, d)
|
||||||
|
|
||||||
statements.eval(d)
|
try:
|
||||||
|
statements.eval(d)
|
||||||
|
except bb.parse.SkipPackage:
|
||||||
|
bb.data.setVar("__SKIPPED", True, d)
|
||||||
|
if include == 0:
|
||||||
|
return { "" : d }
|
||||||
|
|
||||||
if ext != ".bbclass" and include == 0:
|
if ext != ".bbclass" and include == 0:
|
||||||
return ast.multi_finalize(fn, d)
|
return ast.multi_finalize(fn, d)
|
||||||
|
|
Loading…
Reference in New Issue