Closed Bug 134728 Opened 23 years ago Closed 22 years ago

mozJSComponentLoader::UnloadAll => JSCLAutoContext::JSCLAutoContext Getting service @mozilla.org/js/xpc/ContextStack;1 on shutdown.

Categories

(Core :: XPConnect, defect)

defect
Not set
minor

Tracking

()

VERIFIED FIXED

People

(Reporter: timeless, Assigned: dbradley)

References

Details

Attachments

(1 file, 1 obsolete file)

Getting service on shutdown. Denied. ContractID: @mozilla.org/js/xpc/ContextStack;1 IID: {a1339ae0-05c1-11d4-8f92-0010a4e73d9a} ###!!! ASSERTION: stop for contractid: '0', file /home/timeless/mozilla/xpcom/components/nsComponentManager.cpp, line 2158 ###!!! Break: at file /home/timeless/mozilla/xpcom/components/nsComponentManager.cpp, line 2158 #2 0x2831cba9 in nsDebug::Assertion (aStr=0x2836d288 "stop for contractid", aExpr=0x2836d108 "0", aFile=0x2836c6c0 "/home/timeless/mozilla/xpcom/components/nsComponentManager.cpp", aLine=2158) at /home/timeless/mozilla/xpcom/glue/nsDebug.cpp:291 #3 0x282c3701 in nsComponentManagerImpl::GetServiceByContractID (this=0x80c4000, aContractID=0x28832b00 "@mozilla.org/js/xpc/ContextStack;1", aIID=@0x2883151c, result=0xbfbff558) at /home/timeless/mozilla/xpcom/components/nsComponentManager.cpp:2158 #4 0x2831f73e in nsGetServiceByContractID::operator() (this=0xbfbff5d8, aIID=@0x2883151c, aInstancePtr=0xbfbff558) at /home/timeless/mozilla/xpcom/glue/nsComponentManagerUtils.cpp:123 #5 0x2882b13f in nsCOMPtr<nsIThreadJSContextStack>::assign_from_helper (this=0xbfbff5e8, helper=@0xbfbff5d8, aIID=@0x2883151c) at ../../../../dist/include/xpcom/nsCOMPtr.h:922 #6 0x2882dabb in nsCOMPtr<nsIThreadJSContextStack>::nsCOMPtr (this=0xbfbff5e8, helper=@0xbfbff5d8) at ../../../../dist/include/xpcom/nsCOMPtr.h:553 #7 0x28825bbb in JSCLAutoContext::JSCLAutoContext (this=0xbfbff614, rt=0x80d1000) at /home/timeless/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp:1271 #8 0x28825af6 in mozJSComponentLoader::UnloadAll (this=0x80cf500, aWhen=3) at /home/timeless/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp:1252 #9 0x282c5bd7 in nsComponentManagerImpl::UnloadLibraries (this=0x80c4000, serviceMgr=0x0, aWhen=3) at /home/timeless/mozilla/xpcom/components/nsComponentManager.cpp:2971 #10 0x282bf129 in nsComponentManagerImpl::Shutdown (this=0x80c4000) at /home/timeless/mozilla/xpcom/components/nsComponentManager.cpp:790 #11 0x282663f2 in NS_ShutdownXPCOM (servMgr=0x0) at /home/timeless/mozilla/xpcom/build/nsXPComInit.cpp:571 Yes I know, shame on me for using NS_ASSERTION(0, ...) Ok, this one is *very* late in the shutdown process... there is code to: 1243 // stabilize the component manager, etc. but it looks like all of this code is designed to lead up to a single JS_MaybeGC and that in mozilla it is very likely that this MaybeGC will be unreachable. I guess the questions are: do we care? can we do anything about it? should we do anything about it?
cc'ing jband -
Blocks: 107391
Attached patch use an old fassioned jscontext (obsolete) (deleted) — Splinter Review
Attachment #110755 - Flags: superreview?(brendan)
Attachment #110755 - Flags: review?(dbradley)
Comment on attachment 110755 [details] [diff] [review] use an old fassioned jscontext Why the useless begin and end request calls if the cx is bound to a thread? Use a smaller stack chunk size, although it shouldn't matter (nothing called from here should allocate an arena from cx->stackPool). /be
Attached patch address comments (deleted) — Splinter Review
Attachment #110755 - Attachment is obsolete: true
Attachment #110755 - Flags: superreview?(brendan)
Attachment #110755 - Flags: review?(dbradley)
Attachment #110755 - Flags: superreview?(brendan)
Attachment #110755 - Flags: review?(dbradley)
Comment on attachment 112751 [details] [diff] [review] address comments r=dbradley The brace positioning is inconsistent with the majority of the code, but the file does have both styles. (I just don't like this particular style ;-)
Attachment #112751 - Flags: superreview?(brendan)
Attachment #112751 - Flags: review+
Comment on attachment 110755 [details] [diff] [review] use an old fassioned jscontext Cleanup
Attachment #110755 - Flags: superreview?(brendan)
Attachment #110755 - Flags: review?(dbradley)
Comment on attachment 112751 [details] [diff] [review] address comments I think shaver wrote this file, so he used 'if (...) {' style, not 'if(...) followed by { on a new line by itself, underhanging the i in if' style. Anyway, sr=me. /be
Attachment #112751 - Flags: superreview?(brendan) → superreview+
checked in
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
checkin Verified -
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: