blob: e40d78c02715234c69b10b128b189f0fb15391f9 [file] [log] [blame]
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "third_party/blink/renderer/platform/disk_data_metadata.h"
#include "third_party/blink/renderer/platform/disk_data_allocator.h"
namespace blink {
ReservedChunk::ReservedChunk(DiskDataAllocator* allocator,
std::unique_ptr<DiskDataMetadata> metadata)
: allocator_(allocator), metadata_(std::move(metadata)) {}
ReservedChunk::~ReservedChunk() {
if (metadata_) {
allocator_->Discard(std::move(metadata_));
}
}
std::unique_ptr<DiskDataMetadata> ReservedChunk::Take() {
return std::move(metadata_);
}
} // namespace blink