diff options
| author | Dan Engelbrecht <[email protected]> | 2022-09-09 18:09:28 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-09-09 18:09:28 +0200 |
| commit | bdb22ddfcf26f057850f6fdbc4705e9026c15469 (patch) | |
| tree | 465df3bad158e516c3781c229c1bc24f57e5879a /zenserver/upstream/jupiter.cpp | |
| parent | 0.1.4 (diff) | |
| download | zen-bdb22ddfcf26f057850f6fdbc4705e9026c15469.tar.xz zen-bdb22ddfcf26f057850f6fdbc4705e9026c15469.zip | |
only try to parse payload hash if header exists (#163)
* only try to parse payload hash if header exists
* changelog
Diffstat (limited to 'zenserver/upstream/jupiter.cpp')
| -rw-r--r-- | zenserver/upstream/jupiter.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/zenserver/upstream/jupiter.cpp b/zenserver/upstream/jupiter.cpp index b82290f3d..260b83355 100644 --- a/zenserver/upstream/jupiter.cpp +++ b/zenserver/upstream/jupiter.cpp @@ -209,7 +209,14 @@ CloudCacheSession::GetInlineBlob(std::string_view Namespace, std::string_view Bu const bool Success = Response.status_code == 200; const IoBuffer Buffer = Success ? IoBufferBuilder::MakeCloneFromMemory(Response.text.data(), Response.text.size()) : IoBuffer(); - OutPayloadHash = IoHash::FromHexString(Response.header["X-Jupiter-InlinePayloadHash"]); + if (auto It = Response.header.find("X-Jupiter-InlinePayloadHash"); It != Response.header.end()) + { + const std::string& PayloadHashHeader = It->second; + if (PayloadHashHeader.length() == IoHash::StringLength) + { + OutPayloadHash = IoHash::FromHexString(PayloadHashHeader); + } + } return {.Response = Buffer, .Bytes = Response.downloaded_bytes, .ElapsedSeconds = Response.elapsed, .Success = Success}; } |