Closed Bug 734129 Opened 14 years ago Closed 14 years ago

Assertion failure: enumerators == cx->enumerators

Categories

(Core :: JavaScript Engine, defect)

13 Branch
x86
All
defect
Not set
critical

Tracking

()

VERIFIED FIXED
mozilla13
Tracking Status
firefox13 + verified

People

(Reporter: bc, Assigned: luke)

References

()

Details

(5 keywords, Whiteboard: [qa!])

Crash Data

Attachments

(1 file)

1. http://www.boston.com/bigpicture/2012/03/smithsonian_magazine_photo_con.html 2. Dismiss slow script dialog. 3. Assertion failure: enumerators == cx->enumerators, at /work/mozilla/builds/nightly/mozilla/js/src/jsinterp.cpp:453 Seen on Nightly/13 Mac and Windows so far. Reproducible with a saved version. I'll try to reduce.
Disabling the chrome and dom script timeout hangs the browser on Mac but does not reproduce the assertion. Note when I say dismiss slow script dialog, I mean to allow the script to continue. I'll check on Windows when I have builds available. Note crashes today's Nightly/13: bp-2840263e-b4d4-4f68-ba38-25d672120308 Firefox 13.0a1 Crash Report [@ js_SuppressDeletedProperty ]
Crash Signature: [@ js_SuppressDeletedProperty ]
Keywords: crash
Crash Signature: [@ js_SuppressDeletedProperty ] → [@ js_SuppressDeletedProperty ] [@ SuppressDeletedPropertyHelper<SingleStringPredicate> ]
It's currently #8 top crasher in 13.0a1 over the last day.
Keywords: topcrash
Keywords: regression
Version: Trunk → 13 Branch
Automation is continuing to pick up more sites with this assertion. I'll see about getting one that doesn't involve the slow script dialog that I can reduce.
Assignee: general → luke
Ah, it seems that uncatchable exceptions completely skip the exception-unwind logic and thus don't call CloseIterator and thus leave a dangling cx->enumerators. That explains how this is a top crash: any slow-script under for-in will crash.
Does this affect 12 or older?
Just Nightly/13, not Aurora/12 or Beta/11.
Attached patch fix and testSplinter Review
This patch fixes the bug by having the exception handling pop cx->enumerators even for uncatchable exceptions. I added a jsapi-test that hits the bug both in the interpreter and jit.
Attachment #604560 - Flags: review?(dvander)
Comment on attachment 604560 [details] [diff] [review] fix and test Review of attachment 604560 [details] [diff] [review]: ----------------------------------------------------------------- <3 TryNoteIter
Attachment #604560 - Flags: review?(dvander) → review+
Crash Signature: [@ js_SuppressDeletedProperty ] [@ SuppressDeletedPropertyHelper<SingleStringPredicate> ] → [@ js_SuppressDeletedProperty ] [@ SuppressDeletedPropertyHelper<SingleStringPredicate>] [@ SuppressDeletedPropertyHelper<IndexRangePredicate>]
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
I see one crash after the patch landed: bp-66d44218-ba53-49c2-985c-66fb62120312.
I retested the 11 urls where I have seen this and did not get this assertion. I did get: Assertion failure: compartment()->activeInference (see bug 727476 and bug 734972) on http://transportationnation.org/2012/03/08/here-we-go-senate-set-to-start-highway-bill-votes-thursday/ with Beta/11 Windows XP|Windows 7, Nightly/13 Windows XP http://www.boston.com/bigpicture/2012/03/smithsonian_magazine_photo_con.html with Beta/11 Windows XP|Windows 7, Aurora/12 Windows XP and one Crash | ASSERTION: You can't dereference a NULL nsAutoPtr with operator->().: 'mRawPtr != 0' on http://shar.es/gDLDB (http://transportationnation.org/2012/03/06/proposed-ny-mta-hikes-wont-pay-for-service-upgrades/) with Beta/11 on Windows 7
Please nominate for uplift to Aurora (13) as per comment 6 stating it is affected.
412f24be91ed is already on Aurora (13).
Whiteboard: [qa+]
No crashes on FF 13b4 and FF 2012-05-18-mozilla-beta-debug on Win 7, Ubuntu 12.04 and Mac OS X 10.6. Marking verified.
Status: RESOLVED → VERIFIED
Whiteboard: [qa+] → [qa!]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: