| Index: third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-multiple-worker-commit.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-multiple-worker-commit.html b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-multiple-worker-commit.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fe8d0e6030d539d8978c4021de221fcfb6740816
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-multiple-worker-commit.html
|
| @@ -0,0 +1,40 @@
|
| +<!DOCTYPE>
|
| +<script src="../../resources/testharness.js"></script>
|
| +<script src="../../resources/testharnessreport.js"></script>
|
| +<script id="myWorker" type="text/worker">
|
| +self.onmessage = function(e) {
|
| + var offscreenCanvas = e.data;
|
| + var offscreen2d = offscreenCanvas.getContext("2d");
|
| + offscreen2d.commit();
|
| + self.postMessage("worker done");
|
| +};
|
| +</script>
|
| +<script>
|
| +function makeWorker() {
|
| + var blob = new Blob([document.getElementById("myWorker").textContent]);
|
| + return new Worker(URL.createObjectURL(blob));
|
| +}
|
| +
|
| +// Regression test for crbug.com/663916
|
| +async_test(function(t) {
|
| + var canvas1 = document.createElement('canvas');
|
| + canvas1.width = canvas1.height = 10;
|
| + var offscreenCanvas1 = canvas1.transferControlToOffscreen();
|
| +
|
| + var canvas2 = document.createElement('canvas');
|
| + canvas2.width = canvas2.height = 10;
|
| + var offscreenCanvas2 = canvas2.transferControlToOffscreen();
|
| +
|
| + var worker1 = makeWorker();
|
| + var worker2 = makeWorker();
|
| + var returnedWorkerCounter = 0;
|
| + worker1.onmessage = worker2.onmessage = function (e) {
|
| + returnedWorkerCounter++;
|
| + if (returnedWorkerCounter == 2)
|
| + t.done();
|
| + };
|
| + worker1.postMessage(offscreenCanvas1, [offscreenCanvas1]);
|
| + worker2.postMessage(offscreenCanvas2, [offscreenCanvas2]);
|
| +}, "Calling OffscreenCanvas.commit() from two workers should not crash.");
|
| +
|
| +</script>
|
|
|