Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: chrome/browser/prerender/prerender_contents.cc

Issue 2181493002: Return unique_ptrs from base::ProcessMetrics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove os_resource_win.* Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/prerender/prerender_contents.cc
diff --git a/chrome/browser/prerender/prerender_contents.cc b/chrome/browser/prerender/prerender_contents.cc
index 88de13f5f99271c013bd1fd42fc7d9f40f9da788..6d104e2b0e36884ee371af60eeee487fb839eefe 100644
--- a/chrome/browser/prerender/prerender_contents.cc
+++ b/chrome/browser/prerender/prerender_contents.cc
@@ -11,6 +11,7 @@
#include <utility>
#include "base/bind.h"
+#include "base/process/process_metrics.h"
#include "base/strings/utf_string_conversions.h"
#include "build/build_config.h"
#include "chrome/browser/chrome_notification_types.h"
@@ -609,17 +610,23 @@ void PrerenderContents::Destroy(FinalStatus final_status) {
base::ProcessMetrics* PrerenderContents::MaybeGetProcessMetrics() {
if (!process_metrics_) {
// If a PrenderContents hasn't started prerending, don't be fully formed.
- if (!GetRenderViewHost() || !GetRenderViewHost()->GetProcess())
- return NULL;
- base::ProcessHandle handle = GetRenderViewHost()->GetProcess()->GetHandle();
+ const RenderViewHost* rvh = GetRenderViewHost();
+ if (!rvh)
+ return nullptr;
+
+ const content::RenderProcessHost* rph = rvh->GetProcess();
+ if (!rph)
+ return nullptr;
+
+ base::ProcessHandle handle = rph->GetHandle();
if (handle == base::kNullProcessHandle)
- return NULL;
+ return nullptr;
+
#if !defined(OS_MACOSX)
- process_metrics_.reset(base::ProcessMetrics::CreateProcessMetrics(handle));
+ process_metrics_ = base::ProcessMetrics::CreateProcessMetrics(handle);
#else
- process_metrics_.reset(base::ProcessMetrics::CreateProcessMetrics(
- handle,
- content::BrowserChildProcessHost::GetPortProvider()));
+ process_metrics_ = base::ProcessMetrics::CreateProcessMetrics(
+ handle, content::BrowserChildProcessHost::GetPortProvider());
#endif
}

Powered by Google App Engine
This is Rietveld 408576698