summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/common/tree_reader_utils.cpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2024-07-08 15:07:24 +0200
committerMaksim Denisov <denisov.maksim@huawei.com>2024-07-22 17:01:13 +0200
commit4368bf026fa7d18d2c01ac18cdb3e9ff6a228221 (patch)
tree52336ed3ea0ad5211a421c08a5c8f4414d98f44c /src/buildtool/execution_api/common/tree_reader_utils.cpp
parenta57bcd17abee9c9f60653f27d26a46b99f46df8b (diff)
downloadjustbuild-4368bf026fa7d18d2c01ac18cdb3e9ff6a228221.tar.gz
Use a fixed HashFunction for reading trees
Diffstat (limited to 'src/buildtool/execution_api/common/tree_reader_utils.cpp')
-rw-r--r--src/buildtool/execution_api/common/tree_reader_utils.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/buildtool/execution_api/common/tree_reader_utils.cpp b/src/buildtool/execution_api/common/tree_reader_utils.cpp
index 874d1884..acd24108 100644
--- a/src/buildtool/execution_api/common/tree_reader_utils.cpp
+++ b/src/buildtool/execution_api/common/tree_reader_utils.cpp
@@ -40,11 +40,13 @@ namespace {
: ObjectType::File};
}
-[[nodiscard]] auto CreateObjectInfo(bazel_re::SymlinkNode const& node)
+[[nodiscard]] auto CreateObjectInfo(bazel_re::SymlinkNode const& node,
+ HashFunction hash_function)
-> Artifact::ObjectInfo {
+
return Artifact::ObjectInfo{
- .digest = ArtifactDigest::Create<ObjectType::File>(
- HashFunction::Instance(), node.target()),
+ .digest = ArtifactDigest::Create<ObjectType::File>(hash_function,
+ node.target()),
.type = ObjectType::Symlink};
}
@@ -87,8 +89,11 @@ auto TreeReaderUtils::ReadObjectInfos(bazel_re::Directory const& dir,
return false;
}
}
+
+ // SHA256 is used since bazel types are processed here.
+ HashFunction const hash_function{HashFunction::JustHash::Compatible};
for (auto const& l : dir.symlinks()) {
- if (not store_info(l.name(), CreateObjectInfo(l))) {
+ if (not store_info(l.name(), CreateObjectInfo(l, hash_function))) {
return false;
}
}