From: Richard Purdie Date: Mon, 14 Oct 2024 10:05:59 +0000 (+0100) Subject: insane: Don't used cachedpath for os.lstat() X-Git-Tag: yocto-5.2~1603 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fa771ae887ab5152f043748cf3419735831bcf7b;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git insane: Don't used cachedpath for os.lstat() The functions behave slightly differently to the functions they're caching and the use in insane.bbclass isn't compatible. For now, to avoid build failures, switch back to the stat calls. We may be able to improve cachedpath or change the call sites. Signed-off-by: Richard Purdie --- diff --git a/meta/classes-global/insane.bbclass b/meta/classes-global/insane.bbclass index 36b139a20d0..efcfa08d2e1 100644 --- a/meta/classes-global/insane.bbclass +++ b/meta/classes-global/insane.bbclass @@ -434,9 +434,8 @@ def package_qa_check_buildpaths(path, name, d, elf): explicitly ignored. """ import stat - global cpath # Ignore symlinks/devs/fifos - mode = cpath.lstat(path).st_mode + mode = os.lstat(path).st_mode if stat.S_ISLNK(mode) or stat.S_ISBLK(mode) or stat.S_ISFIFO(mode) or stat.S_ISCHR(mode) or stat.S_ISSOCK(mode): return @@ -1050,7 +1049,7 @@ def package_qa_check_host_user(path, name, d, elf): return try: - stat = cpath.lstat(path) + stat = os.lstat(path) except OSError as exc: import errno if exc.errno != errno.ENOENT: diff --git a/meta/lib/oe/cachedpath.py b/meta/lib/oe/cachedpath.py index 0138b791d4b..68c85807d9f 100644 --- a/meta/lib/oe/cachedpath.py +++ b/meta/lib/oe/cachedpath.py @@ -111,9 +111,13 @@ class CachedPath(object): return True return False + # WARNING - this is not currently a drop in replacement since they return False + # rather than raise exceptions. def stat(self, path): return self.callstat(path) + # WARNING - this is not currently a drop in replacement since they return False + # rather than raise exceptions. def lstat(self, path): return self.calllstat(path)