blob: d16f0ebf16d4c1a6e6a64b451b998920703d594a [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="../../../resources/js-test.js"></script>
</head>
<script>
description("Check that trying to deserialize an ArrayBuffer when there's not enough memory does not crash (test may only fail flakily)");
const a = [0];
a.__proto__ = {};
Object.defineProperty(a, 0, { get: foo });
Object.defineProperty(a, 80000000, {});
function foo() {
new Uint8Array(a);
}
new Promise(foo);
window.addEventListener('message', e => e.data);
var ab;
try {
ab = new ArrayBuffer(2**23);
for (let i=0; i<10; i++) {
window.postMessage(ab, '*');
}
} catch { }
</script>
</html>