Closed
Bug 472253
Opened 16 years ago
Closed 16 years ago
ASSERTION: XPConnect is being called on a scope without a 'Components' property!
Categories
(Toolkit :: Safe Browsing, defect, P2)
Tracking
()
RESOLVED
FIXED
People
(Reporter: roc, Assigned: dcamp)
Details
(Keywords: fixed1.9.1)
Attachments
(2 files)
|
4.60 KB,
patch
|
tony
:
review+
|
Details | Diff | Splinter Review |
|
699 bytes,
patch
|
tony
:
review+
|
Details | Diff | Splinter Review |
I hit this running leaktest.py with no already-existing leakprofile directory. Running when the leakprofile directory already exists does not trigger the assertion. This may be causing Tinderbox leaktest.py to be asserting and turning the whole box red on Mac and Linux at least. More data coming...
| Reporter | ||
Comment 1•16 years ago
|
||
Stack trace:
#0 NS_DebugBreak_P (aSeverity=1, aStr=0x50bf808 "XPConnect is being called on a scope without a 'Components' property!", aExpr=0x50b6b38 "Error", aFile=0x50bf6ec "/Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativescope.cpp", aLine=764) at /Users/roc/mozilla-checkin/xpcom/base/nsDebugImpl.cpp:236
#1 0x050655b0 in DEBUG_CheckForComponentsInScope (ccx=@0xbfffb58c, obj=0x5476520, OKIfNotInitialized=0) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativescope.cpp:764
#2 0x0506636d in XPCWrappedNativeScope::FindInJSObjectScope (ccx=@0xbfffb58c, obj=0x5476520, OKIfNotInitialized=0) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativescope.cpp:812
#3 0x0505ac38 in xpc_CloneJSFunction (ccx=@0xbfffb58c, funobj=0x83c9000, parent=0xd7c7260) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativeinfo.cpp:63
#4 0x0505b44c in XPCNativeMember::NewFunctionObject (this=0xe8496ec, ccx=@0xbfffb58c, iface=0xe8496b0, parent=0xd7c7260, pval=0xbfffb4e8) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativeinfo.cpp:124
#5 0x050620a7 in DefinePropertyIfFound (ccx=@0xbfffb58c, obj=0xd7c7260, idval=86778932, set=0xe849890, iface=0xe8496b0, member=0xe8496ec, scope=0x81bb630, reflectToStringAndToSource=1, wrapperToReflectInterfaceNames=0x0, wrapperToReflectDoubleWrap=0x0, scriptableInfo=0xe849630, propFlags=1, resolved=0x0) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativejsops.cpp:444
#6 0x05062933 in XPC_WN_ModsAllowed_Proto_Resolve (cx=0x124a600, obj=0xd7c7260, idval=86778932) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1616
#7 0x0026fc90 in js_LookupPropertyWithFlags (cx=0x124a600, obj=0xd7c7260, id=86778932, flags=1, objp=0xbfffb73c, propp=0xbfffb738) at /Users/roc/mozilla-checkin/js/src/jsobj.cpp:3532
#8 0x002739a9 in js_GetPropertyHelper (cx=0x124a600, obj=0xd7c7400, id=86778932, vp=0xbfffbb38, entryp=0xbfffba6c) at /Users/roc/mozilla-checkin/js/src/jsobj.cpp:3796
#9 0x00246fdc in js_Interpret (cx=0x124a600) at /Users/roc/mozilla-checkin/js/src/jsinterp.cpp:4287
#10 0x0025d3a6 in js_Invoke (cx=0x124a600, argc=1, vp=0x129a620, flags=0) at jsinterp.cpp:1336
#11 0x0504e851 in nsXPCWrappedJSClass::CallMethod (this=0xd1ea6f0, wrapper=0xe84ae30, methodIndex=3, info=0x1082ab8, nativeParams=0xbfffc314) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1606
#12 0x05046353 in nsXPCWrappedJS::CallMethod (this=0xe84ae30, methodIndex=3, info=0x1082ab8, params=0xbfffc314) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappedjs.cpp:563
#13 0x004aa350 in PrepareAndDispatch (self=0xe84ae70, methodIndex=3, args=0xbfffc434) at /Users/roc/mozilla-checkin/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp:93
#14 0x004aa3af in nsXPTCStubBase::Stub3 (this=0xe84ae70) at xptcstubsdef.inc:1
#15 0x020f478b in nsDOMEventListenerWrapper::HandleEvent (this=0xe84ae80, aEvent=0xe84aa60) at /Users/roc/mozilla-checkin/content/base/src/nsXMLHttpRequest.cpp:168
#16 0x0211bbd3 in nsEventListenerManager::HandleEventSubType (this=0xe84ae90, aListenerStruct=0xe84aeb8, aListener=0xe84ae80, aDOMEvent=0xe84aa60, aCurrentTarget=0xe849db4, aPhaseFlags=6) at /Users/roc/mozilla-checkin/content/events/src/nsEventListenerManager.cpp:1090
#17 0x0211d766 in nsEventListenerManager::HandleEvent (this=0xe84ae90, aPresContext=0x0, aEvent=0xe8ad240, aDOMEvent=0xbfffc740, aCurrentTarget=0xe849db4, aFlags=6, aEventStatus=0xbfffc744) at /Users/roc/mozilla-checkin/content/events/src/nsEventListenerManager.cpp:1195
#18 0x0215037a in nsEventTargetChainItem::HandleEvent (this=0x1313820, aVisitor=@0xbfffc738, aFlags=6, aMayHaveNewListenerManagers=1) at /Users/roc/mozilla-checkin/content/events/src/nsEventDispatcher.cpp:227
#19 0x021505ba in nsEventTargetChainItem::HandleEventTargetChain (this=0x1313820, aVisitor=@0xbfffc738, aFlags=6, aCallback=0x0, aMayHaveNewListenerManagers=1) at /Users/roc/mozilla-checkin/content/events/src/nsEventDispatcher.cpp:291
#20 0x02150e8b in nsEventDispatcher::Dispatch (aTarget=0xe849db4, aPresContext=0x0, aEvent=0xe8ad240, aDOMEvent=0xe84aa60, aEventStatus=0x0, aCallback=0x0) at /Users/roc/mozilla-checkin/content/events/src/nsEventDispatcher.cpp:508
#21 0x021511f0 in nsEventDispatcher::DispatchDOMEvent (aTarget=0xe849db4, aEvent=0x0, aDOMEvent=0xe84aa60, aPresContext=0x0, aEventStatus=0x0) at /Users/roc/mozilla-checkin/content/events/src/nsEventDispatcher.cpp:570
#22 0x020f5498 in nsXHREventTarget::DispatchDOMEvent (this=0xe849db0, aEvent=0x0, aDOMEvent=0xe84aa60, aPresContext=0x0, aEventStatus=0x0) at /Users/roc/mozilla-checkin/content/base/src/nsXMLHttpRequest.cpp:757
#23 0x020fb28d in nsXMLHttpRequest::ChangeState (this=0xe849db0, aState=16, aBroadcast=1) at /Users/roc/mozilla-checkin/content/base/src/nsXMLHttpRequest.cpp:3104
#24 0x020fc1e8 in nsXMLHttpRequest::Error (this=0xe849db0, aEvent=0x0) at /Users/roc/mozilla-checkin/content/base/src/nsXMLHttpRequest.cpp:3064
#25 0x020fce53 in nsXMLHttpRequest::OnStopRequest (this=0xe849db0, request=0xe84a670, ctxt=0x0, status=2152398850) at /Users/roc/mozilla-checkin/content/base/src/nsXMLHttpRequest.cpp:2282
#26 0x03a79c61 in nsHttpChannel::OnStopRequest (this=0xe84a640, request=0xe84c180, ctxt=0x0, status=2152398850) at /Users/roc/mozilla-checkin/netwerk/protocol/http/src/nsHttpChannel.cpp:4832
#27 0x0399c286 in nsInputStreamPump::OnStateStop (this=0xe84c180) at /Users/roc/mozilla-checkin/netwerk/base/src/nsInputStreamPump.cpp:576
#28 0x0399c3a6 in nsInputStreamPump::OnInputStreamReady (this=0xe84c180, stream=0xe84c06c) at /Users/roc/mozilla-checkin/netwerk/base/src/nsInputStreamPump.cpp:401
#29 0x0045ca72 in nsInputStreamReadyEvent::Run (this=0xe84c1f0) at /Users/roc/mozilla-checkin/xpcom/io/nsStreamUtils.cpp:111
#30 0x0048f242 in nsThread::ProcessNextEvent (this=0xa16a50, mayWait=1, result=0xbfffcb3c) at /Users/roc/mozilla-checkin/xpcom/threads/nsThread.cpp:510
#31 0x00418f68 in NS_ProcessNextEvent_P (thread=0xa16a50, mayWait=1) at nsThreadUtils.cpp:230
#32 0x0048f8d9 in nsThread::Shutdown (this=0xd112db0) at /Users/roc/mozilla-checkin/xpcom/threads/nsThread.cpp:465
#33 0x04b047f1 in mozStorageConnection::Close (this=0x56a2df0) at /Users/roc/mozilla-checkin/storage/src/mozStorageConnection.cpp:244
#34 0x004aa06d in NS_InvokeByIndex_P (that=0x56a2df0, methodIndex=3, paramCount=0, params=0xbfffce54) at /Users/roc/mozilla-checkin/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp:179
#35 0x05054aff in XPCWrappedNative::CallMethod (ccx=@0xbfffd0a0, mode=XPCWrappedNative::CALL_METHOD) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednative.cpp:2424
#36 0x0505f6f5 in XPC_WN_CallMethod (cx=0x1000600, obj=0x5482460, argc=0, argv=0x8686864, vp=0xbfffd1cc) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1477
#37 0x0025d315 in js_Invoke (cx=0x1000600, argc=0, vp=0x868685c, flags=2) at jsinterp.cpp:1318
#38 0x0024be3c in js_Interpret (cx=0x1000600) at /Users/roc/mozilla-checkin/js/src/jsinterp.cpp:5013
#39 0x0025d3a6 in js_Invoke (cx=0x1000600, argc=0, vp=0x8686850, flags=0) at jsinterp.cpp:1336
#40 0x0504e851 in nsXPCWrappedJSClass::CallMethod (this=0xa89acd0, wrapper=0xa841040, methodIndex=3, info=0x117e978, nativeParams=0xbfffde04) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1606
#41 0x05046353 in nsXPCWrappedJS::CallMethod (this=0xa841040, methodIndex=3, info=0x117e978, params=0xbfffde04) at /Users/roc/mozilla-checkin/js/src/xpconnect/src/xpcwrappedjs.cpp:563
#42 0x004aa350 in PrepareAndDispatch (self=0x55c2b90, methodIndex=3, args=0xbfffdf24) at /Users/roc/mozilla-checkin/xpcom/reflect/xptcall/src/md/unix/xptcstubs_unixish_x86.cpp:93
#43 0x004aa3af in nsXPTCStubBase::Stub3 (this=0x55c2b90) at xptcstubsdef.inc:1
#44 0x0048f242 in nsThread::ProcessNextEvent (this=0xa16a50, mayWait=0, result=0xbfffdfd4) at /Users/roc/mozilla-checkin/xpcom/threads/nsThread.cpp:510
#45 0x0041909e in NS_ProcessPendingEvents_P (thread=0xa16a50, timeout=20) at nsThreadUtils.cpp:180
#46 0x04ef0865 in nsBaseAppShell::NativeEventCallback (this=0x561c190) at /Users/roc/mozilla-checkin/widget/src/xpwidgets/nsBaseAppShell.cpp:121
#47 0x04ea78bc in nsAppShell::ProcessGeckoEvents (aInfo=0x561c190) at /Users/roc/mozilla-checkin/widget/src/cocoa/nsAppShell.mm:374
| Reporter | ||
Comment 2•16 years ago
|
||
DumpJSStack():
0 anonymous(fetcher = [object Object]) ["file:///Users/roc/objdirs/mozilla-checkin/ff-debug/dist/FirefoxDebug.app/Contents/MacOS/components/nsUrlClassifierLib.js":2506]
status = 2147746065
responseText = null
this = [object Object]
1 anonymous([object Event @ 0x930b9d0 (native @ 0xe84aa60)]) ["file:///Users/roc/objdirs/mozilla-checkin/ff-debug/dist/FirefoxDebug.app/Contents/MacOS/components/nsUrlClassifierLib.js":2483]
this = [object XMLHttpRequest @ 0xe849d20 (native @ 0xe849db0)]
| Reporter | ||
Comment 3•16 years ago
|
||
FWIW we've started shutting down. The visible windows have closed and there are a couple of warnings
WARNING: NS_ENSURE_TRUE(sgo || !hasHadScriptObject) failed: file /Users/roc/mozilla-checkin/content/base/src/nsContentUtils.cpp, line 4419
WARNING: NS_ENSURE_SUCCESS(rv, 0) failed with result 0x8000FFFF: file /Users/roc/mozilla-checkin/content/base/src/nsContentUtils.cpp, line 2713
The stack looks like some kind of JS nsIRunnable calls mozStorageConnection::Close, which tries to shutdown a thread. While we're waiting for that, we get an nsInputStreamReadyEvent for an XHR which dispatches a DOM event which triggers JS with the above stack.
| Assignee | ||
Comment 4•16 years ago
|
||
| Assignee | ||
Comment 5•16 years ago
|
||
On a new profile, and every 30 days after that, we try to fetch a new MAC key from google. I'm guessing that some of our machines have hit that 30 day limit, and something is going really slowly on google's end.
This attached workaround shuts down the xhr for the new key on quit-application. I'd like to land this to fix up the red, but I think this will require more investigation (into possibly a better fix, and figuring out why the getkey servers are taking so long).
Flags: blocking-firefox3.1?
| Assignee | ||
Comment 6•16 years ago
|
||
Landed workaround as http://hg.mozilla.org/mozilla-central/rev/82e26897aba9
| Assignee | ||
Comment 7•16 years ago
|
||
There was a leak after the workaround, I landed the attached workaround as http://hg.mozilla.org/mozilla-central/rev/0c2e14b37234 and things have cycled green.
I landed the two patches combined as http://hg.mozilla.org/releases/mozilla-1.9.1/rev/26ce52b76a36 on the 1.9.1 branch, as this was causing problems there too.
Comment 8•16 years ago
|
||
You should have probably waited for approval or blocking status before landing that patch on 1.9.1, Dave. Then again, the sheriff should have noticed. :)
Post-facto permission granted.
Flags: blocking-firefox3.1? → blocking-firefox3.1+
Priority: -- → P2
| Assignee | ||
Updated•16 years ago
|
Attachment #355516 -
Flags: review?(tony)
| Assignee | ||
Updated•16 years ago
|
Attachment #355523 -
Flags: review?(tony)
Comment 10•16 years ago
|
||
Comment on attachment 355516 [details] [diff] [review]
workaround
Looks fine.
Attachment #355516 -
Flags: review?(tony) → review+
Comment 11•16 years ago
|
||
Comment on attachment 355523 [details] [diff] [review]
followup
Looks good.
Attachment #355523 -
Flags: review?(tony) → review+
| Assignee | ||
Updated•16 years ago
|
Updated•11 years ago
|
Product: Firefox → Toolkit
You need to log in
before you can comment on or make changes to this bug.
Description
•