diff options
author | Enrico Scholz <enrico.scholz@sigma-chemnitz.de> | 2013-02-11 20:21:53 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-02-11 22:45:25 +0000 |
commit | d518019d6ccb0ffebe7e21b973eb4f9aa5241dec (patch) | |
tree | a1294ddcb1501f2c9803724c4ea80e8060fa73cd | |
parent | 00a2411470b989ca80bc2a6de08d105bc400dae5 (diff) | |
download | ast2050-yocto-poky-d518019d6ccb0ffebe7e21b973eb4f9aa5241dec.zip ast2050-yocto-poky-d518019d6ccb0ffebe7e21b973eb4f9aa5241dec.tar.gz |
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.
(From OE-Core rev: 579369b0fb27fad6d628746a50b9b798078500f6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/package.bbclass | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index a74ec8a..f95fdf7 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 = {} |