From 8e0c54cd0e82ffe120f84f495101cd29e6fd06bf Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Wed, 11 Jun 2014 11:04:44 +0100 Subject: bitbake: bb/utils: fix contains_any() "set1 in set2" doesn't do what you'd expect, and if it did do a subset test that's not the logic required by contains_any(). Instead get the intersection of checkvalues and val and check if the resulting set is empty or not (by evaluating it in a boolean context), which tells us if there are any elements in common. Based on a patch by Valentin Popa . (Bitbake rev: 2e742c03e8dfdfa67899e7f5d579ed14bd87e139) Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- bitbake/lib/bb/utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'bitbake/lib/bb/utils.py') diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index 96d8218812..f62709bed5 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py @@ -851,7 +851,7 @@ def contains_any(variable, checkvalues, truevalue, falsevalue, d): checkvalues = set(checkvalues.split()) else: checkvalues = set(checkvalues) - if checkvalues in val: + if checkvalues & val: return truevalue return falsevalue -- cgit v1.2.3-54-g00ecf