Last Comment Bug 781722 - Crash from a scratchpad's sandbox: "Assertion Failure: rt->heapState == JSRuntime::Idle"
: Crash from a scratchpad's sandbox: "Assertion Failure: rt->heapState == JSRun...
Status: RESOLVED FIXED
: assertion, crash
Product: Core
Classification: Components
Component: XPConnect (show other bugs)
: Trunk
: x86_64 Linux
: -- critical (vote)
: mozilla17
Assigned To: Nobody; OK to take it and work on it
:
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-09 18:44 PDT by Thaddee Tyl [:espadrine]
Modified: 2012-08-14 06:00 PDT (History)
4 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Backtrace (13.22 KB, text/plain)
2012-08-09 20:15 PDT, Thaddee Tyl [:espadrine]
no flags Details
Loosen over-tight assertion in JS_GetGlobalForScopeChain. (840 bytes, patch)
2012-08-12 16:43 PDT, Nicholas Nethercote [:njn]
wmccloskey: review+
Details | Diff | Splinter Review

Description Thaddee Tyl [:espadrine] 2012-08-09 18:44:27 PDT
Backtrace: http://pastebin.mozilla.org/1747828

Situation: writing in the scratchpad that may have evaluated
something in the background.

I got the following message, too:
Assertion failure: rt->heapState == JSRuntime::Idle, at /home/tyl/files/cloud/fx-team/js/src/jsapi.cpp:241
Comment 1 Thaddee Tyl [:espadrine] 2012-08-09 20:15:14 PDT
Created attachment 650766 [details]
Backtrace
Comment 2 Bobby Holley (:bholley) (busy with Stylo) 2012-08-10 01:23:50 PDT
Bill, Nick, looks like we're running into an AssertHeapIsIdle assertion while collecting compartment stats. Can you have a look at the stack and say where we're going wrong?
Comment 3 Nicholas Nethercote [:njn] 2012-08-12 16:43:27 PDT
Created attachment 651240 [details] [diff] [review]
Loosen over-tight assertion in JS_GetGlobalForScopeChain.

I assume it's reasonable for JS_GetGlobalForScopeChain() to be called within
a call to nsXPConnect::GetNativeOfWrapper()?  If so, the assertion is too
strong, and should be changed to AssertHeapIsIdleOrIterating().

It's possible that we'll see this same overtight assertion in other
jsapi.cpp functions that can be called within GetNativeOfWrapper().
Comment 4 Nicholas Nethercote [:njn] 2012-08-13 16:52:57 PDT
https://hg.mozilla.org/integration/mozilla-inbound/rev/6615f5ae4ffd
Comment 5 Ed Morley [:emorley] 2012-08-14 06:00:39 PDT
https://hg.mozilla.org/mozilla-central/rev/6615f5ae4ffd

Note You need to log in before you can comment on or make changes to this bug.