Closed Bug 677367 Opened 14 years ago Closed 14 years ago

[jsdbg2] Assertion failure: !fp->isEvalFrame(), at jsinterpinlines.h:276

Categories

(Core :: JavaScript Engine, defect)

Other Branch
x86_64
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla9

People

(Reporter: decoder, Assigned: luke)

Details

(Keywords: assertion, testcase, Whiteboard: [inbound])

Attachments

(1 file)

The following code asserts on jsdbg2 branch (revision 82545b1e4129, options -j -m -d): var g = newGlobal('new-compartment'); var dbg = new Debugger(g); dbg.onDebuggerStatement = function (frame) { var code = "assertEq(c, 'ok');\n"; assertEq(frame.evalWithBindings("eval(s)", {s: code, a: 1234}).return, undefined); }; g.eval("function first() { return second(); }"); g.eval("function second() { return eval('third()'); }"); g.eval("function third() { debugger; }"); g.evaluate("first();");
Reduced a bit: var g = newGlobal('new-compartment'); var dbg = new Debugger(g); dbg.onDebuggerStatement = function (frame) { frame.eval("eval('0')"); }; g.eval("(function () { debugger; })();");
This happens in m-i too, with -d: function f() {} trap(f, 0, 'eval("2+2")'); f();
Attached patch fix for m-iSplinter Review
Sorry about ignoring your vote; I already had the patch :) The heavyweight assert was removed since evalInFrame let's you put an eval frame inside a non-heavyweight function.
Assignee: general → luke
Status: NEW → ASSIGNED
Attachment #552259 - Flags: review?(jorendorff)
Comment on attachment 552259 [details] [diff] [review] fix for m-i Great!
Attachment #552259 - Flags: review?(jorendorff) → review+
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla9
A testcase for this bug was automatically identified at js/src/jit-test/tests/basic/testBug677367.js.
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: