summaryrefslogtreecommitdiff
path: root/classes/base.bbclass
diff options
context:
space:
mode:
authorBrian Pomerantz <bapper@mvista.com>2010-01-15 07:36:58 +0000
committerMarcin Juszkiewicz <marcin@juszkiewicz.com.pl>2010-02-01 18:22:25 +0100
commitcc735a4fa20c2829d187eacc7dd5b943e1132265 (patch)
treebe4e929b5f9f898f5fa85f584d3a27ea7d890996 /classes/base.bbclass
parentff31db47356816eeb4679dd53439fa06b285ca39 (diff)
base.bbclass: in base_contains, check for var existance before using it
When using base_contains() to check for a string in a variable for a, if the variable is not defined an exception occurs. By checking the existance of the variable and returning false if it isn't there, a value can be checked for a variable regardless of whether or not it is defined. Signed-off-by: Brian Pomerantz <bapper@mvista.com> Signed-off-by: Chris Larson <clarson@mvista.com> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl> Signed-off-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
Diffstat (limited to 'classes/base.bbclass')
-rw-r--r--classes/base.bbclass7
1 files changed, 5 insertions, 2 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass
index 846528618a..9a242720e7 100644
--- a/classes/base.bbclass
+++ b/classes/base.bbclass
@@ -244,14 +244,17 @@ def base_version_less_or_equal(variable, checkvalue, truevalue, falsevalue, d):
return falsevalue
def base_contains(variable, checkvalues, truevalue, falsevalue, d):
+ val = bb.data.getVar(variable,d,1)
+ if not val:
+ return falsevalue
matches = 0
if type(checkvalues).__name__ == "str":
checkvalues = [checkvalues]
for value in checkvalues:
- if bb.data.getVar(variable,d,1).find(value) != -1:
+ if val.find(value) != -1:
matches = matches + 1
if matches == len(checkvalues):
- return truevalue
+ return truevalue
return falsevalue
def base_both_contain(variable1, variable2, checkvalue, d):