Index: extensions/renderer/api_activity_logger.cc |
diff --git a/extensions/renderer/api_activity_logger.cc b/extensions/renderer/api_activity_logger.cc |
index ab4c67e4dc34b5e45f909ac0bf3f4611bda28232..08eb53e26493857fda7d04470d57f714f30dc05e 100644 |
--- a/extensions/renderer/api_activity_logger.cc |
+++ b/extensions/renderer/api_activity_logger.cc |
@@ -12,18 +12,24 @@ |
#include "extensions/common/extension_messages.h" |
#include "extensions/renderer/activity_log_converter_strategy.h" |
#include "extensions/renderer/api_activity_logger.h" |
+#include "extensions/renderer/dispatcher.h" |
#include "extensions/renderer/script_context.h" |
using content::V8ValueConverter; |
namespace extensions { |
-APIActivityLogger::APIActivityLogger(ScriptContext* context) |
- : ObjectBackedNativeHandler(context) { |
- RouteFunction("LogEvent", base::Bind(&APIActivityLogger::LogEvent)); |
- RouteFunction("LogAPICall", base::Bind(&APIActivityLogger::LogAPICall)); |
+APIActivityLogger::APIActivityLogger(ScriptContext* context, |
+ Dispatcher* dispatcher) |
+ : ObjectBackedNativeHandler(context), dispatcher_(dispatcher) { |
+ RouteFunction("LogEvent", base::Bind(&APIActivityLogger::LogEvent, |
+ base::Unretained(this))); |
+ RouteFunction("LogAPICall", base::Bind(&APIActivityLogger::LogAPICall, |
+ base::Unretained(this))); |
} |
+APIActivityLogger::~APIActivityLogger() {} |
+ |
// static |
void APIActivityLogger::LogAPICall( |
const v8::FunctionCallbackInfo<v8::Value>& args) { |
@@ -45,6 +51,9 @@ void APIActivityLogger::LogInternal( |
CHECK(args[1]->IsString()); |
CHECK(args[2]->IsArray()); |
+ if (!dispatcher_->activity_logging_enabled()) |
+ return; |
+ |
std::string ext_id = *v8::String::Utf8Value(args[0]); |
ExtensionHostMsg_APIActionOrEvent_Params params; |
params.api_call = *v8::String::Utf8Value(args[1]); |