summaryrefslogtreecommitdiff
path: root/src/buildtool/tree_structure
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2025-05-19 17:55:40 +0200
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2025-06-04 14:34:44 +0200
commitab7adbb24384387a5c46a6340ecdedc4c1481079 (patch)
tree11a696741dfdf2be32b2633a1e9b3bd90b24b793 /src/buildtool/tree_structure
parentdd9fa2841fcb5983b4ea845d5f9dc1b635d8dd18 (diff)
downloadjustbuild-ab7adbb24384387a5c46a6340ecdedc4c1481079.tar.gz
Remove unneeded extra checks for upwards symlinks
Diffstat (limited to 'src/buildtool/tree_structure')
-rw-r--r--src/buildtool/tree_structure/TARGETS1
-rw-r--r--src/buildtool/tree_structure/tree_structure_utils.cpp19
2 files changed, 2 insertions, 18 deletions
diff --git a/src/buildtool/tree_structure/TARGETS b/src/buildtool/tree_structure/TARGETS
index c103ea93..7f235188 100644
--- a/src/buildtool/tree_structure/TARGETS
+++ b/src/buildtool/tree_structure/TARGETS
@@ -47,7 +47,6 @@
, ["src/buildtool/file_system", "git_repo"]
, ["src/buildtool/file_system", "object_type"]
, ["src/utils/cpp", "hex_string"]
- , ["src/utils/cpp", "path"]
, ["src/utils/cpp", "tmp_dir"]
]
}
diff --git a/src/buildtool/tree_structure/tree_structure_utils.cpp b/src/buildtool/tree_structure/tree_structure_utils.cpp
index 758e47fc..b8b9dcc3 100644
--- a/src/buildtool/tree_structure/tree_structure_utils.cpp
+++ b/src/buildtool/tree_structure/tree_structure_utils.cpp
@@ -14,7 +14,6 @@
#include "src/buildtool/tree_structure/tree_structure_utils.hpp"
-#include <algorithm>
#include <cstddef>
#include <filesystem>
#include <functional>
@@ -38,7 +37,6 @@
#include "src/buildtool/file_system/git_repo.hpp"
#include "src/buildtool/file_system/object_type.hpp"
#include "src/utils/cpp/hex_string.hpp"
-#include "src/utils/cpp/path.hpp"
#include "src/utils/cpp/tmp_dir.hpp"
auto TreeStructureUtils::Compute(ArtifactDigest const& tree,
@@ -65,22 +63,9 @@ auto TreeStructureUtils::Compute(ArtifactDigest const& tree,
fmt::format("Failed to read content of: {}", tree.hash())};
}
- auto const check_symlinks =
- [&storage](std::vector<ArtifactDigest> const& ids) {
- return std::all_of(
- ids.begin(), ids.end(), [&storage](auto const& id) -> bool {
- auto path_to_symlink =
- storage.CAS().BlobPath(id, /*is_executable=*/false);
- if (not path_to_symlink) {
- return false;
- }
- auto const content =
- FileSystemManager::ReadFile(*path_to_symlink);
- return content and PathIsNonUpwards(*content);
- });
- };
+ auto skip_symlinks = [](auto const& /*unused*/) { return true; };
auto const entries = GitRepo::ReadTreeData(
- *tree_content, tree.hash(), check_symlinks, /*is_hex_id=*/true);
+ *tree_content, tree.hash(), skip_symlinks, /*is_hex_id=*/true);
if (not entries) {
return unexpected{
fmt::format("Failed to parse git tree: {}", tree.hash())};