bitbake: data_smart: Avoid exceptions for non string data

File "scripts/lib/checklayer/__init__.py", line 49, in _get_layer_collections
    ldata.expandVarref('LAYERDIR')
  File "build/bitbake/lib/bb/data_smart.py", line 1007, in expandVarref
    if referrervalue and ref in referrervalue:
TypeError: argument of type 'bool' is not iterable

We inject True values as an internal sentinel to the datastore, fix
this codepath to handle it.

(Bitbake rev: 3b88562d87ac94725c1a683c859c2a6a3287d173)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2022-02-22 11:36:33 +00:00
parent ccbc29bbc4
commit 6c23bd5c81

View File

@@ -1004,7 +1004,7 @@ class DataSmart(MutableMapping):
value = self.getVar(variable, False)
for key in keys:
referrervalue = self.getVar(key, False)
if referrervalue and ref in referrervalue:
if referrervalue and isinstance(referrervalue, str) and ref in referrervalue:
self.setVar(key, referrervalue.replace(ref, value))
def localkeys(self):