]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-125084: Resolve paths in generator common code (GH-125085)
authorCody Maloney <cmaloney@users.noreply.github.com>
Tue, 8 Oct 2024 17:16:02 +0000 (10:16 -0700)
committerGitHub <noreply@github.com>
Tue, 8 Oct 2024 17:16:02 +0000 (12:16 -0500)
In out of tree builds, the paths can contain `../ which needs to be
resolved for the relative path calculation to work.

Tools/cases_generator/generators_common.py

index f32a20b304c3548ed0e86b66b352fa6ea71019d1..0bfa1a3b56fbc2dc792c206bd561a59539d03652 100644 (file)
@@ -43,13 +43,13 @@ class TokenIterator:
                 break
         return self.look_ahead
 
-ROOT = Path(__file__).parent.parent.parent
-DEFAULT_INPUT = (ROOT / "Python/bytecodes.c").absolute().as_posix()
+ROOT = Path(__file__).parent.parent.parent.resolve()
+DEFAULT_INPUT = (ROOT / "Python/bytecodes.c").as_posix()
 
 
 def root_relative_path(filename: str) -> str:
     try:
-        return Path(filename).absolute().relative_to(ROOT).as_posix()
+        return Path(filename).resolve().relative_to(ROOT).as_posix()
     except ValueError:
         # Not relative to root, just return original path.
         return filename