diff options
| author | Per Larsson <[email protected]> | 2021-09-20 10:58:23 +0200 |
|---|---|---|
| committer | Per Larsson <[email protected]> | 2021-09-20 10:58:23 +0200 |
| commit | f4b7639b0f26d16c9a482b2db5eb598e851d7bb3 (patch) | |
| tree | 6b16ab3c3542cd8167a0cac48fec78f78d00656c /zenserver/cache/structuredcache.cpp | |
| parent | Merge branch 'main' of https://github.com/EpicGames/zen (diff) | |
| download | zen-f4b7639b0f26d16c9a482b2db5eb598e851d7bb3.tar.xz zen-f4b7639b0f26d16c9a482b2db5eb598e851d7bb3.zip | |
Respect skip attachments when retrieved from upstream cache.
Diffstat (limited to 'zenserver/cache/structuredcache.cpp')
| -rw-r--r-- | zenserver/cache/structuredcache.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/zenserver/cache/structuredcache.cpp b/zenserver/cache/structuredcache.cpp index 469e39bd4..2ab433b90 100644 --- a/zenserver/cache/structuredcache.cpp +++ b/zenserver/cache/structuredcache.cpp @@ -333,6 +333,18 @@ HttpStructuredCacheService::HandleCacheRecordRequest(zen::HttpServerRequest& Req if (FoundCount == AttachmentCount) { m_CacheStore.Put(Ref.BucketSegment, Ref.HashKey, {.Value = CacheRecord.GetBuffer().AsIoBuffer()}); + + if (zen::CachePolicy::SkipAttachments == (Policy & zen::CachePolicy::SkipAttachments)) + { + CbPackage PackageWithoutAttachments; + PackageWithoutAttachments.SetObject(CacheRecord); + + MemoryOutStream MemStream; + BinaryWriter Writer(MemStream); + PackageWithoutAttachments.Save(Writer); + + Value.Value = IoBuffer(IoBuffer::Clone, MemStream.Data(), MemStream.Size()); + } } else { |