tor-browser

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

postmessage-dictionary-transferables-worker.js (664B)


      1 var messageHandler = function(port, e) {
      2    var text_decoder = new TextDecoder;
      3    port.postMessage({
      4      content: text_decoder.decode(e.data),
      5      byteLength: e.data.byteLength
      6    });
      7 
      8    // Send back the array buffer via Client.postMessage.
      9    port.postMessage(e.data, {transfer: [e.data.buffer]});
     10 
     11    port.postMessage({
     12      content: text_decoder.decode(e.data),
     13      byteLength: e.data.byteLength
     14    });
     15 };
     16 
     17 self.addEventListener('message', e => {
     18    if (e.ports[0]) {
     19      // Wait for messages sent via MessagePort.
     20      e.ports[0].onmessage = messageHandler.bind(null, e.ports[0]);
     21      return;
     22    }
     23    messageHandler(e.source, e);
     24  });