diff options
| -rw-r--r-- | bitbake/lib/bb/data_smart.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/bitbake/lib/bb/data_smart.py b/bitbake/lib/bb/data_smart.py index 297a2f45b4..c342adaa0a 100644 --- a/bitbake/lib/bb/data_smart.py +++ b/bitbake/lib/bb/data_smart.py | |||
| @@ -43,6 +43,7 @@ __setvar_regexp__ = re.compile(r'(?P<base>.*?)(?P<keyword>_append|_prepend|_remo | |||
| 43 | __expand_var_regexp__ = re.compile(r"\${[^{}@\n\t :]+}") | 43 | __expand_var_regexp__ = re.compile(r"\${[^{}@\n\t :]+}") |
| 44 | __expand_python_regexp__ = re.compile(r"\${@.+?}") | 44 | __expand_python_regexp__ = re.compile(r"\${@.+?}") |
| 45 | __whitespace_split__ = re.compile(r'(\s)') | 45 | __whitespace_split__ = re.compile(r'(\s)') |
| 46 | __override_regexp__ = re.compile(r'[a-z0-9]+') | ||
| 46 | 47 | ||
| 47 | def infer_caller_details(loginfo, parent = False, varval = True): | 48 | def infer_caller_details(loginfo, parent = False, varval = True): |
| 48 | """Save the caller the trouble of specifying everything.""" | 49 | """Save the caller the trouble of specifying everything.""" |
| @@ -597,7 +598,7 @@ class DataSmart(MutableMapping): | |||
| 597 | # aka pay the cookie monster | 598 | # aka pay the cookie monster |
| 598 | override = var[var.rfind('_')+1:] | 599 | override = var[var.rfind('_')+1:] |
| 599 | shortvar = var[:var.rfind('_')] | 600 | shortvar = var[:var.rfind('_')] |
| 600 | while override and override.islower(): | 601 | while override and __override_regexp__.match(override): |
| 601 | if shortvar not in self.overridedata: | 602 | if shortvar not in self.overridedata: |
| 602 | self.overridedata[shortvar] = [] | 603 | self.overridedata[shortvar] = [] |
| 603 | if [var, override] not in self.overridedata[shortvar]: | 604 | if [var, override] not in self.overridedata[shortvar]: |
