Closed Bug 336255 Opened 18 years ago Closed 18 years ago

Error in nsScriptNameSpaceManager::RegisterExternalClassName

Categories

(Core :: DOM: Core & HTML, defect)

x86
Windows XP
defect
Not set
major

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: mikhail.zabaluev, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.0.2) Gecko/20060308 Firefox/1.5.0.2
Build Identifier: Xulrunner trunk 2006-05-02

I get an error trying to embed Gecko built from Xulrunner trunk. This error began to occur only recently.

It looks like it's repeatedly trying to register the "DOMParser" class name, and probably others, in the script namespace manager.

Below is a call stack copied from the Visual Studio 2005 debugger:

        xul.dll!NS_DebugBreak_P(unsigned int aSeverity=, const char * aStr=,
const char * aExpr=, const char * aFile=, int aLine=)  Line 356 C++
        xul.dll!nsScriptNameSpaceManager::RegisterExternalClassName(const
char * aClassName=0x0012d630, nsID & aCID={...})  Line 642 + 0x24
bytes   C++
        xul.dll!nsDOMClassInfo::RegisterExternalClasses()  Line 1656    C++
        xul.dll!nsDOMClassInfo::Init()  Line 3111       C++
        xul.dll!nsDOMClassInfo::GetClassInfoInstance(nsDOMClassInfoID
aID=eDOMClassInfo_Window_id)  Line 3611 C++
        xul.dll!nsGlobalWindow::QueryInterface(const nsID & aIID={...}, void
* * aInstancePtr=0x0012d6f0)  Line 530 + 0x17 bytes     C++
        xul.dll!nsQueryInterface::operator()(const nsID & aIID={...}, void *
* answer=0x0012d6f0)  Line 52   C++
        xul.dll!nsCOMPtr<nsIClassInfo>::assign_from_qi(nsQueryInterface
qi={...}, const nsID & aIID={...})  Line 1232 + 0x12 bytes  C++
        xul.dll!XPCWrappedNative::GetNewOrUsed(XPCCallContext & ccx={...},
nsISupports * Object=0x0202b398, XPCWrappedNativeScope *
Scope=0x0202f790, XPCNativeInterface * Interface=0x01f63c50,
XPCWrappedNative * * resultWrapper=0x0012d7dc)  Line 290        C++
        xul.dll!XPCConvert::NativeInterface2JSObject(XPCCallContext &
ccx={...}, nsIXPConnectJSObjectHolder * * dest=0x0012d93c, nsISupports
* src=0x0202b398, const nsID * iid=0x0191b164, JSObject *
scope=0x0212aea8, int allowNativeWrapper=0, unsigned int *
pErr=0x0012d870)  Line 1064 + 0xf bytes C++
        xul.dll!nsXPConnect::WrapNative(JSContext * aJSContext=0x0202cb78,
JSObject * aScope=0x0212aea8, nsISupports * aCOMObj=0x0202b398, const
nsID & aIID={...}, nsIXPConnectJSObjectHolder * * _retval=0x0012d93c)
Line 583 + 0x1b bytes   C++
        xul.dll!nsXPConnect::InitClassesWithNewWrappedGlobal(JSContext *
aJSContext=0x0202cb78, nsISupports * aCOMObj=0x0202b398, const nsID &
aIID={...}, unsigned int aFlags=0, nsIXPConnectJSObjectHolder * *
_retval=0x0012d980)  Line 506 + 0x23 bytes      C++
        xul.dll!nsJSContext::InitContext(nsIScriptGlobalObject *
aGlobalObject=0x0202b398)  Line 1624 + 0x27 bytes       C++
        xul.dll!NS_CreateScriptContext(nsIScriptGlobalObject *
aGlobal=0x0202b398, nsIScriptContext * * aContext=0x0012d9dc)  Line
2430    C++

        xul.dll!nsDOMScriptObjectFactory::NewScriptContext(nsIScriptGlobalObject
* aGlobal=0x0202b398, nsIScriptContext * * aContext=0x0012d9dc)  Line
107 + 0xd bytes C++
        xul.dll!nsDocShell::EnsureScriptEnvironment()  Line 8237 + 0x27
bytes   C++
        xul.dll!nsDocShell::GetInterface(const nsID & aIID={...}, void * *
aSink=0x0012da6c)  Line 418 + 0x3c bytes        C++
        xul.dll!nsWebShell::GetInterface(const nsID & aIID={...}, void * *
aInstancePtr=0x0012da6c)  Line 491 + 0xc bytes  C++
        xul.dll!nsGetInterface::operator()(const nsID & aIID={...}, void * *
aInstancePtr=0x0012da6c)  Line 52 + 0x10 bytes  C++
        xul.dll!nsCOMPtr<nsIDOMWindow>::assign_from_helper(const
nsCOMPtr_helper & helper={...}, const nsID & aIID={...})  Line 1292 +
0xe bytes       C++
        xul.dll!nsCOMPtr<nsIDOMWindow>::nsCOMPtr<nsIDOMWindow>(const
nsCOMPtr_helper & helper={...})  Line 695   C++
        xul.dll!nsWebBrowser::GetContentDOMWindow(nsIDOMWindow * *
_retval=0x0012daf8)  Line 462   C++
        xul.dll!nsWebBrowser::Create()  Line 1229 + 0x1e bytes  C++
        WTLMozDemo.exe!WTLMoz::CWebBrowserWindow::Create(HWND__ *
hWndParent=0x0011051e, int x=0, int y=0, int width=0, int height=0)
Line 104 + 0x24 bytes   C++ 

Reproducible: Always
Assignee: general → general
Component: JavaScript Engine → DOM
QA Contact: general → ian
Peter, this looks like fallout from moving this stuff to content somehow?
Flags: blocking1.9a2?
Probably some stuff remaining in the categories for DOM classes. Nuking the component registry should help.
(In reply to comment #2)
> Probably some stuff remaining in the categories for DOM classes. Nuking the
> component registry should help.

Yes it did. Should the bug be resolved now?

Yeah, a stale component registry is going to do this...
Status: UNCONFIRMED → RESOLVED
Closed: 18 years ago
Resolution: --- → WORKSFORME
Flags: blocking1.9a2?
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.