From 956ed669cf71d1ee74dbb573c542a7565c3a90d3 Mon Sep 17 00:00:00 2001 From: Oliver Reiche Date: Thu, 27 Jun 2024 17:17:33 +0200 Subject: Use (un)expected for CAS utils --- src/buildtool/execution_api/execution_service/cas_server.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/buildtool/execution_api/execution_service/cas_server.cpp') diff --git a/src/buildtool/execution_api/execution_service/cas_server.cpp b/src/buildtool/execution_api/execution_service/cas_server.cpp index 89597a38..c4cf8f6f 100644 --- a/src/buildtool/execution_api/execution_service/cas_server.cpp +++ b/src/buildtool/execution_api/execution_service/cas_server.cpp @@ -280,14 +280,14 @@ auto CASServiceImpl::SplitBlob(::grpc::ServerContext* /*context*/, ? CASUtils::SplitBlobIdentity(blob_digest, *storage_) : CASUtils::SplitBlobFastCDC(blob_digest, *storage_); - if (std::holds_alternative(split_result)) { - auto status = std::get(split_result); + if (not split_result) { + auto const& status = split_result.error(); auto str = fmt::format("SplitBlob: {}", status.error_message()); logger_.Emit(LogLevel::Error, "{}", str); return ::grpc::Status{status.error_code(), str}; } - auto chunk_digests = std::get>(split_result); + auto const& chunk_digests = *split_result; logger_.Emit(LogLevel::Debug, [&blob_digest, &chunk_digests]() { std::stringstream ss{}; ss << "Split blob " << blob_digest.hash() << ":" @@ -346,13 +346,13 @@ auto CASServiceImpl::SpliceBlob(::grpc::ServerContext* /*context*/, std::back_inserter(chunk_digests)); auto splice_result = CASUtils::SpliceBlob(blob_digest, chunk_digests, *storage_); - if (std::holds_alternative(splice_result)) { - auto status = std::get(splice_result); + if (not splice_result) { + auto const& status = splice_result.error(); auto str = fmt::format("SpliceBlob: {}", status.error_message()); logger_.Emit(LogLevel::Error, "{}", str); return ::grpc::Status{status.error_code(), str}; } - auto digest = std::get(splice_result); + auto const& digest = *splice_result; if (auto err = CheckDigestConsistency(blob_digest, digest)) { auto str = fmt::format("SpliceBlob: {}", *err); logger_.Emit(LogLevel::Error, "{}", str); -- cgit v1.2.3