From b60521c9b3ec9573ba987fc5ca0c7431bc5ad148 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 10 Jul 2015 14:11:16 +0100 Subject: lib/oe/recipeutils: Ensure order of data store doesn't influence the result The order of the keys from the data store is not prescribed. If target_datadir comes before datadir the selftests fail since the 'wrong' variable is used for substitutions. This highlights an issue with the replace_dir_vars() function. Fix this. (From OE-Core rev: d47c496aa058f5b18d03a68bcd79e5c8607de34f) Signed-off-by: Richard Purdie --- meta/lib/oe/recipeutils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'meta/lib') diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py index d8094c8769..ccec2a1444 100644 --- a/meta/lib/oe/recipeutils.py +++ b/meta/lib/oe/recipeutils.py @@ -620,7 +620,7 @@ def replace_dir_vars(path, d): for var in d: if var.endswith('dir') and var.lower() == var: value = d.getVar(var, True) - if value.startswith('/') and not '\n' in value: + if value.startswith('/') and not '\n' in value and value not in dirvars: dirvars[value] = var for dirpath in sorted(dirvars.keys(), reverse=True): path = path.replace(dirpath, '${%s}' % dirvars[dirpath]) -- cgit v1.2.3-54-g00ecf