Closed Bug 386664 Opened 13 years ago Closed 13 years ago
Current should not fail" is failing a lot
This assertion fires constantly in my build. Here's a stack trace: #0 NS_DebugBreak_P (aSeverity=1, aStr=0x13a1128 "suspectCurrent should not fail", aExpr=0x139a808 "res", aFile=0x13a0c90 "/Users/roc/mozilla-checkin/mozilla/xpcom/base/nsCycleCollector.cpp", aLine=2393) at /Users/roc/mozilla-checkin/mozilla/xpcom/base/nsDebugImpl.cpp:259 #1 0x0136c3cc in nsCycleCollector_suspectCurrent (n=0x4319cdc0) at /Users/roc/mozilla-checkin/mozilla/xpcom/base/nsCycleCollector.cpp:2393 #2 0x12a5083d in WrappedNativeSuspecter (table=0x3bf1d440, hdr=0x33a14200, number=0, arg=0x0) at /Users/roc/mozilla-checkin/mozilla/js/src/xpconnect/src/xpcwrappednativescope.cpp:304 #3 0x01035471 in JS_DHashTableEnumerate (table=0x3bf1d440, etor=0x12a507a8 <WrappedNativeSuspecter(JSDHashTable*, JSDHashEntryHdr*, unsigned int, void*)>, arg=0x0) at /Users/roc/mozilla-checkin/mozilla/js/src/jsdhash.c:713 #4 0x12a68df1 in Native2WrappedNativeMap::Enumerate (this=0x3afbf2e0, f=0x12a507a8 <WrappedNativeSuspecter(JSDHashTable*, JSDHashEntryHdr*, unsigned int, void*)>, arg=0x0) at /Users/roc/mozilla-checkin/mozilla/js/src/xpconnect/src/xpcmaps.h:212 #5 0x12a5089b in XPCWrappedNativeScope::SuspectAllWrappers (rt=0x2925c40) at /Users/roc/mozilla-checkin/mozilla/js/src/xpconnect/src/xpcwrappednativescope.cpp:319 #6 0x12a0a101 in nsXPConnect::BeginCycleCollection (this=0x2925c00) at /Users/roc/mozilla-checkin/mozilla/js/src/xpconnect/src/nsXPConnect.cpp:566 #7 0x0136c7db in nsCycleCollector::Collect (this=0x6e3000, aTryCollections=1) at /Users/roc/mozilla-checkin/mozilla/xpcom/base/nsCycleCollector.cpp:1990 #8 0x0136c938 in nsCycleCollector_collect () at /Users/roc/mozilla-checkin/mozilla/xpcom/base/nsCycleCollector.cpp:2411 #9 0x193ddce1 in nsJSContext::DOMBranchCallback (cx=0x43b46e00, script=0x41d99610) at /Users/roc/mozilla-checkin/mozilla/dom/src/base/nsJSEnvironment.cpp:820 #10 0x0135ff07 in nsTimerImpl::Fire (this=0x41d99610) at /Users/roc/mozilla-checkin/mozilla/xpcom/threads/nsTimerImpl.cpp:386
13 years ago
I hit this the other day. The problem was that we hit a |Fault|, which set the mDoNothing flag. I'll fix the assertion so that it doesn't fire all the time once we Fault. But we really need to figure out why we're faulting, which disables cycle collection...
This is what I got on the console just before the faults started in my current session: ###!!! ASSERTION: JS object but unknown to the JS GC?: 'refcount > 0', file /Users/roc/mozilla-checkin/mozilla/js/src/xpconnect/src/nsXPConnect.cpp, line 670 ###!!! ASSERTION: Fault in cycle collector: zero refcount (ptr: 2024100) : 'Not Reached', file /Users/roc/mozilla-checkin/mozilla/xpcom/base/nsCycleCollector.cpp, line 920
Yep, that was the same pair of assertions I got.
I checked in the fix to the assertion a few days ago; I just spun off the underlying issue as bug 386912.
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.