mirror of
https://github.com/nodejs/node.git
synced 2025-05-21 14:39:17 +00:00

PR-URL: https://github.com/nodejs/node/pull/47251 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com>
24 lines
701 B
JavaScript
24 lines
701 B
JavaScript
// Copyright 2023 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --stack-size=100
|
|
|
|
function worker_code(arr) {
|
|
postMessage("worker starting");
|
|
const large_bigint = 2n ** 100_000n;
|
|
function f() {
|
|
// Run until near the stack limit.
|
|
try { f(); } catch (e) {
|
|
postMessage("stack limit reached");
|
|
postMessage(arr[large_bigint]);
|
|
}
|
|
}
|
|
onmessage = f;
|
|
}
|
|
let w = new Worker(worker_code, { "arguments": [], "type": "function" });
|
|
assertEquals("worker starting", w.getMessage());
|
|
w.postMessage("");
|
|
assertEquals("stack limit reached", w.getMessage());
|
|
w.terminate();
|