Closed Bug 422413 Opened 16 years ago Closed 16 years ago

JS warnings not reported by XPConnect

Categories

(Core :: XPConnect, defect)

defect
Not set
normal

Tracking

()

VERIFIED DUPLICATE of bug 415498

People

(Reporter: matthew.gertner, Unassigned)

Details

I have a XULRunner app which runs some onload script. I get the following warning: "reference to undefined property window.platform". java.options.strict and java.options.showInConsole are both set, but the error is not reported anywhere.

Stack trace:

>	xul.dll!xpcWrappedJSErrorReporter(JSContext * cx=0x03570910, const char * message=0x040edab8, JSErrorReport * report=0x0012ca54)  Line 759	C++
 	js3250.dll!js_ReportErrorAgain(JSContext * cx=0x03570910, const char * message=0x040ed990, JSErrorReport * reportp=0x0012ca54)  Line 1231 + 0x15	C
 	js3250.dll!ReportError(JSContext * cx=0x03570910, const char * message=0x040ed990, JSErrorReport * reportp=0x0012ca54)  Line 855 + 0x11	C
 	js3250.dll!js_ReportErrorNumberVA(JSContext * cx=0x03570910, unsigned int flags=0x00000005, const JSErrorFormatString * (void *, const char *, const unsigned int)* callback=0x00d32103, void * userRef=0x00000000, const unsigned int errorNumber=0x000000a2, int charArgs=0x00000001, char * ap=0x0012cac4)  Line 1181 + 0x11	C
 	js3250.dll!JS_ReportErrorFlagsAndNumber(JSContext * cx=0x03570910, unsigned int flags=0x00000005, const JSErrorFormatString * (void *, const char *, const unsigned int)* errorCallback=0x00d32103, void * userRef=0x00000000, const unsigned int errorNumber=0x000000a2, ...)  Line 5501 + 0x1f	C
 	js3250.dll!js_ReportValueErrorFlags(JSContext * cx=0x03570910, unsigned int flags=0x00000005, const unsigned int errorNumber=0x000000a2, int spindex=0x00000000, long v=0x02da32cc, JSString * fallback=0x00000000, const char * arg1=0x00000000, const char * arg2=0x00000000)  Line 1289 + 0x24	C
 	js3250.dll!js_GetPropertyHelper(JSContext * cx=0x03570910, JSObject * obj=0x03981320, long id=0x02da32cc, long * vp=0x0012cbd0, JSPropCacheEntry * * entryp=0x00000000)  Line 3664 + 0x1e	C
 	js3250.dll!js_GetProperty(JSContext * cx=0x03570910, JSObject * obj=0x03981320, long id=0x02da32cc, long * vp=0x0012cbd0)  Line 3691 + 0x17	C
 	xul.dll!nsXPCWrappedJSClass::CallQueryInterfaceOnJSObject(XPCCallContext & ccx={...}, JSObject * jsobj=0x03981320, const nsID & aIID={...})  Line 243 + 0x1b	C++
 	xul.dll!nsXPCWrappedJSClass::GetRootJSObject(XPCCallContext & ccx={...}, JSObject * aJSObj=0x03981320)  Line 708 + 0x15	C++
 	xul.dll!nsXPCWrappedJS::GetNewOrUsed(XPCCallContext & ccx={...}, JSObject * aJSObj=0x03981320, const nsID & aIID={...}, nsISupports * aOuter=0x00000000, nsXPCWrappedJS * * wrapperResult=0x0012cc94)  Line 322 + 0x10	C++
 	xul.dll!XPCConvert::JSObject2NativeInterface(XPCCallContext & ccx={...}, void * * dest=0x02d4cdd8, JSObject * src=0x03981320, const nsID * iid=0x0012cfb8, nsISupports * aOuter=0x00000000, unsigned int * pErr=0x00000000)  Line 1321 + 0x19	C++
 	xul.dll!XPCConvert::JSData2Native(XPCCallContext & ccx={...}, void * d=0x02d4cdd8, long s=0x03981320, const nsXPTType & type={...}, int useAllocator=0x00000000, const nsID * iid=0x0012cfb8, unsigned int * pErr=0x00000000)  Line 1034 + 0x1e	C++
 	xul.dll!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS * wrapper=0x03587ac8, unsigned short methodIndex=0x0003, const XPTMethodDescriptor * info=0x02d499e0, nsXPTCMiniVariant * nativeParams=0x0012d100)  Line 1656 + 0x31	C++
Summary: JS warnings not reported bu XPConnect → JS warnings not reported by XPConnect
This might be a red herring. Upon further investigation, window.platform *is* there so it's probably right that it is not reporting this warning. It doesn't seem to be reporting my actual problem, but that's a different issue. INVALID?
Actually, I would like to leave the open until I've investigated the problem in more detail. Specifically, I said something like:

window.platform.icon()

The undefined property warning for platform is triggered, but ignored. Timeless seems to think that it might check for Object.platform before looking for a global property. In any case, icon() calls an XPCOM method implemented in a C++ component which returns NS_ERROR_NOT_IMPLEMENTED. I would definitely expect to see this appear in the console, but I don't. I believe there is a general issue with JavaScript error reporting, perhaps new to FF3, but I'll have to investigate it more.
see bug 415498. it has a patch that fixes all xpconnect related reporting issues. consider marking this one a duplicate
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.