aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md1
-rw-r--r--src/zenremotestore/jupiter/jupitersession.cpp13
2 files changed, 9 insertions, 5 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 54a9ff201..516b24f73 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,7 @@
- Bugfix: Fix ASSERT after running `zen workspace info` on a non-existing workspace
- Bugfix: Fixed issue where GC could start after shutdown of GC had been requested causing a race
- Bugfix: Storage stats of builds on dashboard start page fixed
+- Bugfix: Fixed ASSERT when `zen builds download` `--allow-redirect` was enabled and downloading partial block ranges
## 5.7.6
- Improvement: Oidc token executable is now launched hidden when launch from inside zenserver (oplog import/export)
diff --git a/src/zenremotestore/jupiter/jupitersession.cpp b/src/zenremotestore/jupiter/jupitersession.cpp
index 942e2a9dc..6a7938e7f 100644
--- a/src/zenremotestore/jupiter/jupitersession.cpp
+++ b/src/zenremotestore/jupiter/jupitersession.cpp
@@ -780,11 +780,14 @@ JupiterSession::GetBuildBlob(std::string_view Namespace,
{
IoHash ValidateRawHash;
uint64_t ValidateRawSize = 0;
- ZEN_ASSERT_SLOW(CompressedBuffer::ValidateCompressedHeader(Response.ResponsePayload, ValidateRawHash, ValidateRawSize));
- ZEN_ASSERT_SLOW(ValidateRawHash == Hash);
- ZEN_ASSERT_SLOW(ValidateRawSize > 0);
- ZEN_UNUSED(ValidateRawHash, ValidateRawSize);
- Response.ResponsePayload.SetContentType(ZenContentType::kCompressedBinary);
+ if (!Headers.Entries.contains("Range"))
+ {
+ ZEN_ASSERT_SLOW(CompressedBuffer::ValidateCompressedHeader(Response.ResponsePayload, ValidateRawHash, ValidateRawSize));
+ ZEN_ASSERT_SLOW(ValidateRawHash == Hash);
+ ZEN_ASSERT_SLOW(ValidateRawSize > 0);
+ ZEN_UNUSED(ValidateRawHash, ValidateRawSize);
+ Response.ResponsePayload.SetContentType(ZenContentType::kCompressedBinary);
+ }
}
}
return detail::ConvertResponse(Response, "JupiterSession::GetBuildBlob"sv);