summaryrefslogtreecommitdiffstats
path: root/extensions
diff options
context:
space:
mode:
authordgozman <dgozman@chromium.org>2016-03-08 18:14:53 -0800
committerCommit bot <commit-bot@chromium.org>2016-03-09 02:16:12 +0000
commit95a3bd544fe93629b209797d3251423f3d674463 (patch)
tree7b31a00668596c94556a41f068a2992bed3ecd7b /extensions
parent3462e690304786b5db00051953cb1f09af474641 (diff)
downloadchromium_src-95a3bd544fe93629b209797d3251423f3d674463.zip
chromium_src-95a3bd544fe93629b209797d3251423f3d674463.tar.gz
chromium_src-95a3bd544fe93629b209797d3251423f3d674463.tar.bz2
Use v8::MicrotasksScope internally in V8RecursionScope.
If this sticks we can just remove V8RecursionScope and WebScopedMicrotaskSuppression, along with other cleanups. Attempt #2. Previous one broke GinJavaBridgeValueConverterTest.TypedArrays. BUG=585949 Review URL: https://codereview.chromium.org/1743763004 Cr-Commit-Position: refs/heads/master@{#380033}
Diffstat (limited to 'extensions')
-rw-r--r--extensions/renderer/activity_log_converter_strategy_unittest.cc2
-rw-r--r--extensions/renderer/api_test_base.cc2
-rw-r--r--extensions/renderer/module_system_test.cc2
-rw-r--r--extensions/renderer/safe_builtins.cc2
4 files changed, 6 insertions, 2 deletions
diff --git a/extensions/renderer/activity_log_converter_strategy_unittest.cc b/extensions/renderer/activity_log_converter_strategy_unittest.cc
index 9237cad..aa80447 100644
--- a/extensions/renderer/activity_log_converter_strategy_unittest.cc
+++ b/extensions/renderer/activity_log_converter_strategy_unittest.cc
@@ -6,6 +6,7 @@
#include "base/values.h"
#include "extensions/renderer/activity_log_converter_strategy.h"
#include "testing/gtest/include/gtest/gtest.h"
+#include "third_party/WebKit/public/web/WebScopedMicrotaskSuppression.h"
#include "v8/include/v8.h"
using content::V8ValueConverter;
@@ -122,6 +123,7 @@ TEST_F(ActivityLogConverterStrategyTest, ConversionTest) {
"};"
"})();";
+ blink::WebScopedMicrotaskSuppression microtasks_scope;
v8::Local<v8::Script> script(
v8::Script::Compile(v8::String::NewFromUtf8(isolate_, source)));
v8::Local<v8::Object> v8_object = script->Run().As<v8::Object>();
diff --git a/extensions/renderer/api_test_base.cc b/extensions/renderer/api_test_base.cc
index abf868b..79f95e2 100644
--- a/extensions/renderer/api_test_base.cc
+++ b/extensions/renderer/api_test_base.cc
@@ -214,7 +214,7 @@ void ApiTestEnvironment::RunTestInner(const std::string& test_name,
}
void ApiTestEnvironment::RunPromisesAgain() {
- env()->isolate()->RunMicrotasks();
+ v8::MicrotasksScope::PerformCheckpoint(env()->isolate());
base::MessageLoop::current()->PostTask(
FROM_HERE, base::Bind(&ApiTestEnvironment::RunPromisesAgain,
base::Unretained(this)));
diff --git a/extensions/renderer/module_system_test.cc b/extensions/renderer/module_system_test.cc
index 68c4bd1..06a4d55 100644
--- a/extensions/renderer/module_system_test.cc
+++ b/extensions/renderer/module_system_test.cc
@@ -253,7 +253,7 @@ void ModuleSystemTest::ExpectNoAssertionsMade() {
}
void ModuleSystemTest::RunResolvedPromises() {
- isolate_->RunMicrotasks();
+ v8::MicrotasksScope::PerformCheckpoint(isolate_);
}
} // namespace extensions
diff --git a/extensions/renderer/safe_builtins.cc b/extensions/renderer/safe_builtins.cc
index 3bfa01a..3a66eaf 100644
--- a/extensions/renderer/safe_builtins.cc
+++ b/extensions/renderer/safe_builtins.cc
@@ -9,6 +9,7 @@
#include "base/strings/stringprintf.h"
#include "extensions/renderer/script_context.h"
#include "extensions/renderer/v8_helpers.h"
+#include "third_party/WebKit/public/web/WebScopedMicrotaskSuppression.h"
namespace extensions {
@@ -200,6 +201,7 @@ class ExtensionImpl : public v8::Extension {
return;
}
+ blink::WebScopedMicrotaskSuppression microtasks_scope;
v8::Local<v8::Value> return_value;
if (function->Call(context, recv, argc, argv.get()).ToLocal(&return_value))
info.GetReturnValue().Set(return_value);