Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
michael@0 | 1 | // Bug 717104 - Unreachable debuggee globals should not keep their debuggers |
michael@0 | 2 | // alive. The loop is to defeat conservative stack scanning; if the same stack |
michael@0 | 3 | // locations are used each time through the loop, at least three of the |
michael@0 | 4 | // debuggers should be collected. |
michael@0 | 5 | |
michael@0 | 6 | for (var i = 0; i < 4; i++) { |
michael@0 | 7 | var g = newGlobal(); |
michael@0 | 8 | var dbg = new Debugger(g); |
michael@0 | 9 | dbg.onDebuggerStatement = function () { throw "FAIL"; }; |
michael@0 | 10 | dbg.o = makeFinalizeObserver(); |
michael@0 | 11 | dbg.loop = g; // make a cycle of strong references with dbg and g |
michael@0 | 12 | } |
michael@0 | 13 | |
michael@0 | 14 | gc(); |
michael@0 | 15 | assertEq(finalizeCount() > 0, true); |