From 579369b0fb27fad6d628746a50b9b798078500f6 Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Mon, 11 Feb 2013 20:21:53 +0100 Subject: package.bbclass: support dangling path components Commit ec2aab09769f4b6817d74d2175afa2b7c7598750 introduced a regression on packages which contain symlinks with unresolvable path components (e.g. lsof-dbg). While assigning a variable, an exception was raised and the exception handler accessed this variable. Patch deals both with the dangling path components by assuming them as valid directories and by avoiding the broken assignment. Signed-off-by: Richard Purdie --- meta/classes/package.bbclass | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index a74ec8a847..f95fdf7251 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1000,12 +1000,8 @@ python package_fixsymlinks () { for path in pkgfiles[pkg]: rpath = path[len(inst_root):] pkg_files[pkg].append(rpath) - try: - rtarget = oe.path.realpath(path, inst_root, True) - os.lstat(rtarget) - except OSError, (err, strerror): - if err != errno.ENOENT: - raise + rtarget = oe.path.realpath(path, inst_root, True, assume_dir = True) + if not os.path.lexists(rtarget): dangling_links[pkg].append(os.path.normpath(rtarget[len(inst_root):])) newrdepends = {} -- cgit v1.2.3