mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 16:55:40 +00:00
Bug 1563051 - Fix a debugger leak of BaselineDebugModeOSRInfo in DebugEpilogue. r=iain
The other caller of EnsureBareExitFrame is when unwinding in the exception handler and we already call deleteDebugModeOSRInfo there. Differential Revision: https://phabricator.services.mozilla.com/D36759 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
6937395c0b
commit
e3a4316acf
11
js/src/jit-test/tests/debug/bug1563051.js
Normal file
11
js/src/jit-test/tests/debug/bug1563051.js
Normal file
@ -0,0 +1,11 @@
|
||||
// |jit-test| error:123
|
||||
var g = newGlobal({newCompartment: true});
|
||||
var dbg = new Debugger;
|
||||
dbg.addDebuggee(g);
|
||||
dbg.onEnterFrame = function(frame) {
|
||||
frame.onPop = function() {
|
||||
dbg.removeDebuggee(g);
|
||||
throw 123;
|
||||
}
|
||||
}
|
||||
g.eval("(function() {})()");
|
@ -922,6 +922,7 @@ bool DebugEpilogue(JSContext* cx, BaselineFrame* frame, jsbytecode* pc,
|
||||
if (!ok) {
|
||||
// Pop this frame by updating packedExitFP, so that the exception
|
||||
// handling code will start at the previous frame.
|
||||
frame->deleteDebugModeOSRInfo();
|
||||
JitFrameLayout* prefix = frame->framePrefix();
|
||||
EnsureBareExitFrame(cx->activation()->asJit(), prefix);
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user