This is an automated email from the ASF dual-hosted git repository.

juergbi pushed a commit to branch jbilleter/workspace
in repository https://gitbox.apache.org/repos/asf/buildstream.git

commit fa651eafb8e5586fe9a3e62a024b57b4f6baedb5
Author: Jürg Billeter <[email protected]>
AuthorDate: Sat Oct 3 19:49:30 2026 +0200

    _elementsources.py: Don't follow symlinks in `init_workspace()`
---
 src/buildstream/_elementsources.py | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/buildstream/_elementsources.py 
b/src/buildstream/_elementsources.py
index 1d862c176..44c908440 100644
--- a/src/buildstream/_elementsources.py
+++ b/src/buildstream/_elementsources.py
@@ -15,7 +15,7 @@ import os
 from contextlib import contextmanager
 from typing import TYPE_CHECKING, Iterator
 
-from . import _cachekey
+from . import _cachekey, utils
 from ._exceptions import SkipJob
 from ._context import Context
 from ._protos.buildstream.v2 import source_pb2
@@ -191,12 +191,11 @@ class ElementSources:
     def init_workspace(self, directory: str):
         for source in self.sources():
             if source._directory:
+                utils._ensure_real_directory(directory, source._directory)
                 srcdir = os.path.join(directory, source._directory)
             else:
                 srcdir = directory
 
-            os.makedirs(srcdir, exist_ok=True)
-
             source._init_workspace(srcdir)
 
     # fetch():

Reply via email to