| Index: net/http/disk_cache_based_quic_server_info.cc
|
| diff --git a/net/http/disk_cache_based_quic_server_info.cc b/net/http/disk_cache_based_quic_server_info.cc
|
| index 2d4251b497f675dd1442eb769982986490540d69..b149fc95ae211e39a78ef9fa35e31add15508f28 100644
|
| --- a/net/http/disk_cache_based_quic_server_info.cc
|
| +++ b/net/http/disk_cache_based_quic_server_info.cc
|
| @@ -10,6 +10,7 @@
|
| #include "base/logging.h"
|
| #include "base/metrics/histogram_macros.h"
|
| #include "base/stl_util.h"
|
| +#include "base/trace_event/memory_usage_estimator.h"
|
| #include "net/base/completion_callback.h"
|
| #include "net/base/io_buffer.h"
|
| #include "net/base/net_errors.h"
|
| @@ -185,6 +186,15 @@ void DiskCacheBasedQuicServerInfo::OnExternalCacheHit() {
|
| backend_->OnExternalCacheHit(key());
|
| }
|
|
|
| +size_t DiskCacheBasedQuicServerInfo::EstimateMemoryUsage() const {
|
| + return base::trace_event::EstimateMemoryUsage(new_data_) +
|
| + base::trace_event::EstimateMemoryUsage(pending_write_data_) +
|
| + base::trace_event::EstimateMemoryUsage(server_id_) +
|
| + (read_buffer_ == nullptr ? 0 : read_buffer_->size()) +
|
| + (write_buffer_ == nullptr ? 0 : write_buffer_->size()) +
|
| + base::trace_event::EstimateMemoryUsage(data_);
|
| +}
|
| +
|
| std::string DiskCacheBasedQuicServerInfo::key() const {
|
| return "quicserverinfo:" + server_id_.ToString();
|
| }
|
| @@ -335,14 +345,14 @@ int DiskCacheBasedQuicServerInfo::DoRead() {
|
| return OK;
|
| }
|
|
|
| - read_buffer_ = new IOBuffer(size);
|
| + read_buffer_ = new IOBufferWithSize(size);
|
| state_ = READ_COMPLETE;
|
| return entry_->ReadData(
|
| 0 /* index */, 0 /* offset */, read_buffer_.get(), size, io_callback_);
|
| }
|
|
|
| int DiskCacheBasedQuicServerInfo::DoWrite() {
|
| - write_buffer_ = new IOBuffer(new_data_.size());
|
| + write_buffer_ = new IOBufferWithSize(new_data_.size());
|
| memcpy(write_buffer_->data(), new_data_.data(), new_data_.size());
|
| state_ = WRITE_COMPLETE;
|
|
|
|
|