tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

toBlob-origin-clean-offscreen.sub.html (1125B)


      1 <!DOCTYPE html>
      2 <meta charset=utf-8>
      3 <title>convertToBlob, OffscreenCanvas: origin-clean flag</title>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <link rel="help" href="https://html.spec.whatwg.org/multipage/scripting.html#the-imagebitmap-rendering-context">
      7 <script>
      8 const crossOriginImageUrl = "http://{{domains[www1]}}:{{ports[http][0]}}/images/red.png";
      9 
     10 async_test(t => {
     11  var img = new Image();
     12  // Use a cross-origin URL.
     13  img.src = crossOriginImageUrl;
     14 
     15  img.onload = t.step_func(e => {
     16    createImageBitmap(img, 0, 0, img.width, img.height)
     17    .then(t.step_func(bitmap => {
     18      var canvasBitmap = new OffscreenCanvas(img.width,img.height);
     19      var contextBitmap = canvasBitmap.getContext("bitmaprenderer");
     20      contextBitmap.transferFromImageBitmap(bitmap);
     21      promise_rejects_dom(t, 'SecurityError',
     22        canvasBitmap.convertToBlob(),
     23        "convertToBlob on a tainted OffscreenCanvas has to throw").then(t.step_func_done());
     24    }));
     25  });
     26 }, "Test that call convertToBlob on a tainted OffscreenCanvas throws exception");
     27 </script>