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

Unified Diff: chrome/browser/memory_details.cc

Issue 383903003: ifdef various extensions code to be used only when extensions are enabled. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix build Created 6 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/memory_details.cc
diff --git a/chrome/browser/memory_details.cc b/chrome/browser/memory_details.cc
index 65c4de201e867012db10551485f1d4923b23f2d0..7c74e231cc7b6022468b607722c78dd3a529edd1 100644
--- a/chrome/browser/memory_details.cc
+++ b/chrome/browser/memory_details.cc
@@ -10,7 +10,6 @@
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
-#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/url_constants.h"
#include "components/nacl/common/nacl_process_type.h"
@@ -24,11 +23,6 @@
#include "content/public/browser/render_widget_host_iterator.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/bindings_policy.h"
-#include "extensions/browser/extension_system.h"
-#include "extensions/browser/process_manager.h"
-#include "extensions/browser/process_map.h"
-#include "extensions/browser/view_type_utils.h"
-#include "extensions/common/extension.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
@@ -37,6 +31,15 @@
#include "content/public/browser/zygote_host_linux.h"
#endif
+#if defined(ENABLE_EXTENSIONS)
+#include "chrome/browser/extensions/extension_service.h"
+#include "extensions/browser/extension_system.h"
+#include "extensions/browser/process_manager.h"
+#include "extensions/browser/process_map.h"
+#include "extensions/browser/view_type_utils.h"
+#include "extensions/common/extension.h"
+#endif
+
using base::StringPrintf;
using content::BrowserChildProcessHostIterator;
using content::BrowserThread;
@@ -44,7 +47,9 @@ using content::NavigationEntry;
using content::RenderViewHost;
using content::RenderWidgetHost;
using content::WebContents;
+#if defined(ENABLE_EXTENSIONS)
using extensions::Extension;
+#endif
// static
std::string ProcessMemoryInformation::GetRendererTypeNameInEnglish(
@@ -268,15 +273,6 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
process.pid != base::GetProcId(render_process_host->GetHandle())) {
continue;
}
- process.process_type = content::PROCESS_TYPE_RENDERER;
- content::BrowserContext* context =
- render_process_host->GetBrowserContext();
- ExtensionService* extension_service =
- extensions::ExtensionSystem::Get(context)->extension_service();
- extensions::ProcessMap* extension_process_map = NULL;
- // No extensions on Android. So extension_service can be NULL.
- if (extension_service)
- extension_process_map = extensions::ProcessMap::Get(context);
// The RenderProcessHost may host multiple WebContentses. Any
// of them which contain diagnostics information make the whole
@@ -284,7 +280,20 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
if (!widget->IsRenderView())
continue;
+ process.process_type = content::PROCESS_TYPE_RENDERER;
+ bool is_extension = false;
RenderViewHost* host = RenderViewHost::From(widget);
+#if defined(ENABLE_EXTENSIONS)
+ content::BrowserContext* context =
+ render_process_host->GetBrowserContext();
+ ExtensionService* extension_service =
+ extensions::ExtensionSystem::Get(context)->extension_service();
+ extensions::ProcessMap* extension_process_map =
+ extensions::ProcessMap::Get(context);
+ is_extension = extension_process_map->Contains(
+ host->GetProcess()->GetID());
+#endif
+
WebContents* contents = WebContents::FromRenderViewHost(host);
GURL url;
if (contents) {
@@ -293,11 +302,13 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
&chrome_browser->site_data[contents->GetBrowserContext()];
SiteDetails::CollectSiteInfo(contents, site_data);
}
+#if defined(ENABLE_EXTENSIONS)
extensions::ViewType type = extensions::GetViewType(contents);
+#endif
if (host->GetEnabledBindings() & content::BINDINGS_POLICY_WEB_UI) {
process.renderer_type = ProcessMemoryInformation::RENDERER_CHROME;
- } else if (extension_process_map &&
- extension_process_map->Contains(host->GetProcess()->GetID())) {
+ } else if (is_extension) {
+#if defined(ENABLE_EXTENSIONS)
// For our purposes, don't count processes containing only hosted apps
// as extension processes. See also: crbug.com/102533.
std::set<std::string> extension_ids =
@@ -313,9 +324,10 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
break;
}
}
+#endif
}
- if (extension_process_map &&
- extension_process_map->Contains(host->GetProcess()->GetID())) {
+#if defined(ENABLE_EXTENSIONS)
+ if (is_extension) {
const Extension* extension =
extension_service->extensions()->GetByID(url.host());
if (extension) {
@@ -326,6 +338,7 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
continue;
}
}
+#endif
if (!contents) {
process.renderer_type =
@@ -333,12 +346,14 @@ void MemoryDetails::CollectChildInfoOnUIThread() {
continue;
}
+#if defined(ENABLE_EXTENSIONS)
if (type == extensions::VIEW_TYPE_BACKGROUND_CONTENTS) {
process.titles.push_back(base::UTF8ToUTF16(url.spec()));
process.renderer_type =
ProcessMemoryInformation::RENDERER_BACKGROUND_APP;
continue;
}
+#endif
// Since we have a WebContents and and the renderer type hasn't been
// set yet, it must be a normal tabbed renderer.

Powered by Google App Engine
This is Rietveld 408576698