diff options
author | dgozman <dgozman@chromium.org> | 2016-03-08 18:14:53 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-09 02:16:12 +0000 |
commit | 95a3bd544fe93629b209797d3251423f3d674463 (patch) | |
tree | 7b31a00668596c94556a41f068a2992bed3ecd7b /extensions/renderer | |
parent | 3462e690304786b5db00051953cb1f09af474641 (diff) | |
download | chromium_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/renderer')
-rw-r--r-- | extensions/renderer/activity_log_converter_strategy_unittest.cc | 2 | ||||
-rw-r--r-- | extensions/renderer/api_test_base.cc | 2 | ||||
-rw-r--r-- | extensions/renderer/module_system_test.cc | 2 | ||||
-rw-r--r-- | extensions/renderer/safe_builtins.cc | 2 |
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); |