tor-browser

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

bug1904644-1.js (816B)


      1 function test() {
      2    var throwExc = false;
      3    var e = {m: {foreign() {
      4        if (throwExc) {
      5            throw new TypeError("hi");
      6        }
      7    }}};
      8    var bin = wasmTextToBinary(`
      9    (module
     10        (import "m" "foreign" (func $foreign))
     11        (func
     12            (export "f")
     13            try
     14                (call $foreign)
     15            end
     16        )
     17    )`);
     18    var mod = new WebAssembly.Module(bin);
     19    var inst = new WebAssembly.Instance(mod, e);
     20    for (var i = 0; i < 30; i++) {
     21        if (i === 20) {
     22            throwExc = true;
     23        }
     24        var ex = null;
     25        try {
     26            inst.exports.f();
     27        } catch (e) {
     28            ex = e;
     29        }
     30        if (i >= 20) {
     31            assertEq(ex.message, "hi");
     32        } else {
     33            assertEq(ex, null);
     34        }
     35    }
     36 }
     37 test();