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

Unified Diff: third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js

Issue 2119383002: [compositorworker] Avoid deadlock issue caused by importScript (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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: third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
diff --git a/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js b/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
index 78477212f7826ca9508f4f87f409a19b1b13ba0e..06513ecb214af34b49cd62d475d3da859e8aea8a 100644
--- a/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
+++ b/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
@@ -1,5 +1,3 @@
-self.importScripts('worker-common.js');
-
self.onmessage = function(msg) {
awaitProxyInit(msg.data).then((proxy) => {
proxy.opacity;
@@ -12,3 +10,14 @@ self.onmessage = function(msg) {
}
});
}
+
+function awaitProxyInit(proxy) {
+ return new Promise((resolve, reject) => {
+ function check() {
+ if (proxy.initialized)
+ resolve(proxy);
+ requestAnimationFrame(check);
+ }
+ requestAnimationFrame(check);
+ });
+}

Powered by Google App Engine
This is Rietveld 408576698