summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/storage/fs_utils.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/buildtool/storage/fs_utils.cpp b/src/buildtool/storage/fs_utils.cpp
index f2241fc9..f6055579 100644
--- a/src/buildtool/storage/fs_utils.cpp
+++ b/src/buildtool/storage/fs_utils.cpp
@@ -24,9 +24,16 @@ namespace StorageUtils {
auto GetGitRoot(LocalPathsPtr const& just_mr_paths,
std::string const& repo_url) noexcept -> std::filesystem::path {
if (just_mr_paths->git_checkout_locations.contains(repo_url)) {
- return std::filesystem::absolute(ToNormalPath(std::filesystem::path{
- just_mr_paths->git_checkout_locations[repo_url]
- .get<std::string>()}));
+ if (just_mr_paths->git_checkout_locations[repo_url].is_string()) {
+ return std::filesystem::absolute(ToNormalPath(std::filesystem::path{
+ just_mr_paths->git_checkout_locations[repo_url]
+ .get<std::string>()}));
+ }
+ Logger::Log(
+ LogLevel::Warning,
+ "Retrieving Git checkout location: key {} has non-string value {}",
+ nlohmann::json(repo_url).dump(),
+ just_mr_paths->git_checkout_locations[repo_url].dump());
}
auto repo_url_as_path = std::filesystem::absolute(
ToNormalPath(std::filesystem::path(repo_url)));