<!
DOCTYPE HTML >
<
html >
<!--
https : / / bugzilla . mozilla . org / show_bug . cgi ? id = 1142577
-->
<
head >
<
meta charset=
"utf-8" >
<
title >Test for Bug
1142577 - Async stacks for setTimeout</
title >
<
script src=
"/tests/SimpleTest/SimpleTest.js" ></
script >
<
link rel=
"stylesheet" type=
"text/css" href=
"/tests/SimpleTest/test.css" />
</
head >
<
body >
<
a target=
"_blank" href=
"https://bugzilla.mozilla.org/show_bug.cgi?id=1142577 " >Mozil
la Bug 1142577 </a >
<pre id="stack" ></pre >
<script type="application/javascript" >
SimpleTest.waitForExplicitFinish();
SimpleTest.requestFlakyTimeout("Testing async stacks across setTimeout" );
function getFunctionName(frame ) {
return frame .slice(0 , frame .indexOf("@" ));
}
function a () { b () }
function b () { c() }
function c() { setTimeout(d, 1 ) }
function d() { e() }
function e() { f() }
function f() { setTimeout(g, 1 ) }
function g() { h() }
function h() { i () }
function i () {
var stackString = Error().stack;
document.getElementById("stack" ).textContent = stackString;
var frames = stackString
.split("\n" )
.map (getFunctionName)
.filter(function (name) { return !!name; });
is(frames[0 ], "i" );
is(frames[1 ], "h" );
is(frames[2 ], "g" );
is(frames[3 ], "setTimeout handler*SimpleTest_setTimeoutShim" );
is(frames[4 ], "f" );
is(frames[5 ], "e" );
is(frames[6 ], "d" );
is(frames[7 ], "setTimeout handler*SimpleTest_setTimeoutShim" );
is(frames[8 ], "c" );
is(frames[9 ], "b" );
is(frames[10 ], "a" );
SimpleTest.finish();
}
SpecialPowers.pushPrefEnv(
{"set" : [['javascript.options.asyncstack_capture_debuggee_only' , false]]},
a );
</script >
</body >
</html >
Messung V0.5 in Prozent C=99 H=100 G=99
¤ Dauer der Verarbeitung: 0.2 Sekunden
(vorverarbeitet am 2026-08-26)
¤
*© Formatika GbR, Deutschland