Index: chrome/renderer/extensions/api_activity_logger.cc |
diff --git a/chrome/renderer/extensions/api_activity_logger.cc b/chrome/renderer/extensions/api_activity_logger.cc |
index 28a4367ff15f71d4732f49d8f6997e162e8ca8b3..42f4b267f600a298ee4ede67d61ac94610f78c1b 100644 |
--- a/chrome/renderer/extensions/api_activity_logger.cc |
+++ b/chrome/renderer/extensions/api_activity_logger.cc |
@@ -6,6 +6,7 @@ |
#include "base/bind.h" |
#include "chrome/common/extensions/extension_messages.h" |
#include "chrome/renderer/chrome_render_process_observer.h" |
+#include "chrome/renderer/extensions/activity_log_converter_strategy.h" |
#include "chrome/renderer/extensions/api_activity_logger.h" |
#include "content/public/renderer/render_thread.h" |
#include "content/public/renderer/v8_value_converter.h" |
@@ -56,6 +57,11 @@ void APIActivityLogger::LogInternal( |
v8::Local<v8::Array> arg_array = v8::Local<v8::Array>::Cast(args[2]); |
if (arg_array->Length() > 0) { |
scoped_ptr<V8ValueConverter> converter(V8ValueConverter::create()); |
+ ActivityLogConverterStrategy strategy; |
+ // Do not set the converter's RegExpr to true via SetRegExpAllowed() as this |
+ // will call JS toString() method which can be overwritten. |
not at google - send to devlin
2013/08/07 22:07:56
RegExp seems a bit like an implementation detail.
pmarch
2013/08/08 00:53:07
I've decided to kill this comment
|
+ converter->SetFunctionAllowed(true); |
+ converter->SetStrategy(&strategy); |
scoped_ptr<ListValue> arg_list(new ListValue()); |
for (size_t i = 0; i < arg_array->Length(); ++i) { |
arg_list->Set(i, |