From 912026d85c2f535be2f60c45979162ea25c7f356 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Thu, 14 Jul 2016 09:04:21 +1200 Subject: lib/oe/recipeutils: fix a few issues in find_layerdir() * Allow the function to be called with the base layer path (in which case it will just return the same path) * Ensure that the function doesn't recurse indefinitely if it's called on a file that's not inside a layer * Correct the doc comment for accuracy Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton --- meta/lib/oe/recipeutils.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'meta/lib/oe') diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py index e3c4b8a759..cb4ed53d0f 100644 --- a/meta/lib/oe/recipeutils.py +++ b/meta/lib/oe/recipeutils.py @@ -728,14 +728,16 @@ def bbappend_recipe(rd, destlayerdir, srcfiles, install=None, wildcardver=False, def find_layerdir(fn): - """ Figure out relative path to base of layer for a file (e.g. a recipe)""" - pth = os.path.dirname(fn) + """ Figure out the path to the base of the layer containing a file (e.g. a recipe)""" + pth = fn layerdir = '' while pth: if os.path.exists(os.path.join(pth, 'conf', 'layer.conf')): layerdir = pth break pth = os.path.dirname(pth) + if pth == '/': + return None return layerdir -- cgit 1.2.3-korg