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

Unified Diff: chrome/browser/extensions/extension_function_dispatcher.cc

Issue 15686007: Remove Activity Log usage of Extension objects (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added removed code back to see if that fixes persistent memory errors Created 7 years, 6 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/extensions/extension_function_dispatcher.cc
diff --git a/chrome/browser/extensions/extension_function_dispatcher.cc b/chrome/browser/extensions/extension_function_dispatcher.cc
index a7b352430bfccc2f18722bf044d2061e29f8076e..33f63bb515f6f1abbc1486f7c06057a851db97bd 100644
--- a/chrome/browser/extensions/extension_function_dispatcher.cc
+++ b/chrome/browser/extensions/extension_function_dispatcher.cc
@@ -46,7 +46,7 @@ using WebKit::WebSecurityOrigin;
namespace {
-void LogSuccess(const Extension* extension,
+void LogSuccess(const std::string& extension_id,
const std::string& api_name,
scoped_ptr<ListValue> args,
Profile* profile) {
@@ -56,18 +56,19 @@ void LogSuccess(const Extension* extension,
BrowserThread::PostTask(BrowserThread::UI,
FROM_HERE,
base::Bind(&LogSuccess,
- extension,
+ extension_id,
api_name,
base::Passed(&args),
profile));
} else {
extensions::ActivityLog* activity_log =
extensions::ActivityLog::GetInstance(profile);
- activity_log->LogAPIAction(extension, api_name, args.get(), std::string());
+ activity_log->LogAPIAction(
+ extension_id, api_name, args.get(), std::string());
}
}
-void LogFailure(const Extension* extension,
+void LogFailure(const std::string& extension_id,
const std::string& api_name,
scoped_ptr<ListValue> args,
extensions::BlockedAction::Reason reason,
@@ -78,7 +79,7 @@ void LogFailure(const Extension* extension,
BrowserThread::PostTask(BrowserThread::UI,
FROM_HERE,
base::Bind(&LogFailure,
- extension,
+ extension_id,
api_name,
base::Passed(&args),
reason,
@@ -87,7 +88,7 @@ void LogFailure(const Extension* extension,
extensions::ActivityLog* activity_log =
extensions::ActivityLog::GetInstance(profile);
activity_log->LogBlockedAction(
- extension, api_name, args.get(), reason, std::string());
+ extension_id, api_name, args.get(), reason, std::string());
}
}
@@ -259,7 +260,7 @@ void ExtensionFunctionDispatcher::DispatchOnIOThread(
scoped_ptr<ListValue> args(params.arguments.DeepCopy());
if (!function.get()) {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::ACCESS_DENIED,
@@ -279,7 +280,7 @@ void ExtensionFunctionDispatcher::DispatchOnIOThread(
extension_info_map->IsIncognitoEnabled(extension->id()));
if (!CheckPermissions(function.get(), extension, params, callback)) {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::ACCESS_DENIED,
@@ -293,13 +294,13 @@ void ExtensionFunctionDispatcher::DispatchOnIOThread(
&params.arguments,
base::TimeTicks::Now());
if (violation_error.empty()) {
- LogSuccess(extension,
+ LogSuccess(extension->id(),
params.name,
args.Pass(),
profile_cast);
function->Run();
} else {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::QUOTA_EXCEEDED,
@@ -364,7 +365,7 @@ void ExtensionFunctionDispatcher::DispatchWithCallback(
scoped_ptr<ListValue> args(params.arguments.DeepCopy());
if (!function.get()) {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::ACCESS_DENIED,
@@ -384,7 +385,7 @@ void ExtensionFunctionDispatcher::DispatchWithCallback(
function->set_include_incognito(service->CanCrossIncognito(extension));
if (!CheckPermissions(function.get(), extension, params, callback)) {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::ACCESS_DENIED,
@@ -400,10 +401,10 @@ void ExtensionFunctionDispatcher::DispatchWithCallback(
if (violation_error.empty()) {
// See crbug.com/39178.
ExternalProtocolHandler::PermitLaunchUrl();
- LogSuccess(extension, params.name, args.Pass(), profile());
+ LogSuccess(extension->id(), params.name, args.Pass(), profile());
function->Run();
} else {
- LogFailure(extension,
+ LogFailure(extension->id(),
params.name,
args.Pass(),
extensions::BlockedAction::QUOTA_EXCEEDED,
« no previous file with comments | « chrome/browser/extensions/event_router.cc ('k') | chrome/browser/renderer_host/chrome_render_message_filter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698