| OLD | NEW |
| 1 <script src = "../../../../resources/js-test.js"></script> | 1 <script src = "../../resources/js-test.js"></script> |
| 2 <script src = "../../../../fast/canvas/script-tests/canvas-toBlob-toDataURL-race
.js"></script> | 2 <script src = "../../fast/canvas/script-tests/canvas-toBlob-toDataURL-race.js"><
/script> |
| 3 <script type = 'text/javascript'> | 3 <script type = 'text/javascript'> |
| 4 description("Verifies if synchronous PNG image encoding (toDataURL) conflicts wi
th asynchronous image encoding (toBlob)"); | 4 description("Verifies if synchronous PNG image encoding (toDataURL) conflicts wi
th asynchronous image encoding (toBlob)"); |
| 5 | 5 |
| 6 //Fire a bunch of toBlob operations of canvas to keep the async thread busy | 6 //Fire a bunch of toBlob operations of canvas to keep the async thread busy |
| 7 var j = 0; // due to async nature of toBlob we need a separate counter | 7 var j = 0; // due to async nature of toBlob we need a separate counter |
| 8 for (var i = 0; i < numToBlobCalls; i++) | 8 for (var i = 0; i < numToBlobCalls; i++) |
| 9 { | 9 { |
| 10 canvas.toBlob(function(blob) { | 10 canvas.toBlob(function(blob) { |
| 11 url = URL.createObjectURL(blob); | 11 url = URL.createObjectURL(blob); |
| 12 testImages[j++].src = url; | 12 testImages[j++].src = url; |
| 13 }); | 13 }); |
| 14 } | 14 } |
| 15 | 15 |
| 16 //Then file a bunch of toDataURL operation on main thread, so both threads now c
ompete for image encoding | 16 //Then file a bunch of toDataURL operation on main thread, so both threads now c
ompete for image encoding |
| 17 for (var i = numToBlobCalls; i < (numToDataURLCalls + numToBlobCalls); i++) | 17 for (var i = numToBlobCalls; i < (numToDataURLCalls + numToBlobCalls); i++) |
| 18 { | 18 { |
| 19 testImages[i].src = canvas.toDataURL(); | 19 testImages[i].src = canvas.toDataURL(); |
| 20 } | 20 } |
| 21 </script> | 21 </script> |
| OLD | NEW |