| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/base/sdch_manager.h" | 5 #include "net/base/sdch_manager.h" |
| 6 | 6 |
| 7 #include <inttypes.h> |
| 7 #include <limits.h> | 8 #include <limits.h> |
| 8 | 9 |
| 9 #include <utility> | 10 #include <utility> |
| 10 | 11 |
| 11 #include "base/base64url.h" | 12 #include "base/base64url.h" |
| 12 #include "base/logging.h" | 13 #include "base/logging.h" |
| 13 #include "base/metrics/histogram_macros.h" | 14 #include "base/metrics/histogram_macros.h" |
| 14 #include "base/strings/string_number_conversions.h" | 15 #include "base/strings/string_number_conversions.h" |
| 15 #include "base/strings/string_util.h" | 16 #include "base/strings/string_util.h" |
| 16 #include "base/strings/stringprintf.h" | 17 #include "base/strings/stringprintf.h" |
| (...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 328 } | 329 } |
| 329 | 330 |
| 330 void SdchManager::DumpMemoryStats( | 331 void SdchManager::DumpMemoryStats( |
| 331 base::trace_event::ProcessMemoryDump* pmd, | 332 base::trace_event::ProcessMemoryDump* pmd, |
| 332 const std::string& parent_dump_absolute_name) const { | 333 const std::string& parent_dump_absolute_name) const { |
| 333 // If there are no dictionaries stored, return early without creating a new | 334 // If there are no dictionaries stored, return early without creating a new |
| 334 // MemoryAllocatorDump. | 335 // MemoryAllocatorDump. |
| 335 size_t total_count = dictionaries_.size(); | 336 size_t total_count = dictionaries_.size(); |
| 336 if (total_count == 0) | 337 if (total_count == 0) |
| 337 return; | 338 return; |
| 338 std::string name = base::StringPrintf("net/sdch_manager_%p", this); | 339 std::string name = base::StringPrintf("net/sdch_manager_0x%" PRIxPTR, |
| 340 reinterpret_cast<uintptr_t>(this)); |
| 339 base::trace_event::MemoryAllocatorDump* dump = pmd->GetAllocatorDump(name); | 341 base::trace_event::MemoryAllocatorDump* dump = pmd->GetAllocatorDump(name); |
| 340 if (dump == nullptr) { | 342 if (dump == nullptr) { |
| 341 dump = pmd->CreateAllocatorDump(name); | 343 dump = pmd->CreateAllocatorDump(name); |
| 342 size_t total_size = 0; | 344 size_t total_size = 0; |
| 343 for (const auto& dictionary : dictionaries_) { | 345 for (const auto& dictionary : dictionaries_) { |
| 344 total_size += dictionary.second->data.text().size(); | 346 total_size += dictionary.second->data.text().size(); |
| 345 } | 347 } |
| 346 dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameSize, | 348 dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameSize, |
| 347 base::trace_event::MemoryAllocatorDump::kUnitsBytes, | 349 base::trace_event::MemoryAllocatorDump::kUnitsBytes, |
| 348 total_size); | 350 total_size); |
| 349 dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameObjectCount, | 351 dump->AddScalar(base::trace_event::MemoryAllocatorDump::kNameObjectCount, |
| 350 base::trace_event::MemoryAllocatorDump::kUnitsObjects, | 352 base::trace_event::MemoryAllocatorDump::kUnitsObjects, |
| 351 total_count); | 353 total_count); |
| 352 } | 354 } |
| 355 |
| 353 // Create an empty row under parent's dump so size can be attributed correctly | 356 // Create an empty row under parent's dump so size can be attributed correctly |
| 354 // if |this| is shared between URLRequestContexts. | 357 // if |this| is shared between URLRequestContexts. |
| 355 base::trace_event::MemoryAllocatorDump* empty_row_dump = | 358 base::trace_event::MemoryAllocatorDump* empty_row_dump = |
| 356 pmd->CreateAllocatorDump(parent_dump_absolute_name + "/sdch_manager"); | 359 pmd->CreateAllocatorDump(parent_dump_absolute_name + "/sdch_manager"); |
| 357 pmd->AddOwnershipEdge(empty_row_dump->guid(), dump->guid()); | 360 pmd->AddOwnershipEdge(empty_row_dump->guid(), dump->guid()); |
| 358 } | 361 } |
| 359 | 362 |
| 360 SdchProblemCode SdchManager::AddSdchDictionary( | 363 SdchProblemCode SdchManager::AddSdchDictionary( |
| 361 const std::string& dictionary_text, | 364 const std::string& dictionary_text, |
| 362 const GURL& dictionary_url, | 365 const GURL& dictionary_url, |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 527 entry_dict->SetInteger("tries", it->second.count); | 530 entry_dict->SetInteger("tries", it->second.count); |
| 528 entry_dict->SetInteger("reason", it->second.reason); | 531 entry_dict->SetInteger("reason", it->second.reason); |
| 529 entry_list->Append(std::move(entry_dict)); | 532 entry_list->Append(std::move(entry_dict)); |
| 530 } | 533 } |
| 531 value->Set("blacklisted", std::move(entry_list)); | 534 value->Set("blacklisted", std::move(entry_list)); |
| 532 | 535 |
| 533 return std::move(value); | 536 return std::move(value); |
| 534 } | 537 } |
| 535 | 538 |
| 536 } // namespace net | 539 } // namespace net |
| OLD | NEW |