tor-browser

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

errorPropagation_iframe.html (1375B)


      1 <!--
      2  Any copyright is dedicated to the Public Domain.
      3  http://creativecommons.org/publicdomain/zero/1.0/
      4 -->
      5 <!DOCTYPE HTML>
      6 <html>
      7  <meta charset="utf-8">
      8  <body>
      9    <script type="text/javascript">
     10      var worker;
     11 
     12      function start(workerCount, messageCallback) {
     13        var seenWindowError;
     14        window.onerror = function(message, filename, lineno) {
     15          if (!seenWindowError) {
     16            seenWindowError = true;
     17            messageCallback({
     18              type: "window",
     19              data: { message, filename, lineno }
     20            });
     21            return true;
     22          }
     23          return undefined;
     24        };
     25 
     26        worker = new Worker("errorPropagation_worker.js");
     27 
     28        worker.onmessage = function(event) {
     29          messageCallback(event.data);
     30        };
     31 
     32        var seenWorkerError;
     33        worker.onerror = function(event) {
     34          if (!seenWorkerError) {
     35            seenWorkerError = true;
     36            messageCallback({
     37              type: "worker",
     38              data: {
     39                message: event.message,
     40                filename: event.filename,
     41                lineno: event.lineno
     42              }
     43            });
     44            event.preventDefault();
     45          }
     46        };
     47 
     48        worker.postMessage(workerCount);
     49      }
     50 
     51      function stop() {
     52        worker.terminate();
     53      }
     54    </script>
     55  </body>
     56 </html>