Closed Bug 287006 Opened 20 years ago Closed 6 years ago

venkman doesn't like xpconnect's DumpJSEval ** ASSERTION FAILED: Couldn't get a script wrapper **

Categories

(Other Applications Graveyard :: Venkman JS Debugger, defect)

x86
Windows XP
defect
Not set
trivial

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: timeless, Assigned: rginda)

Details

steps:
1. open venkman
2. drag chatzilla to a working state
3. quit chatzilla
4. close venkman
5. open calendar
6. open venkman
7. close calendar
8. crash (yes, always a good start)
9. in visual studio, evaluate DumpJSStack()
10. in visual studio, evaluate DumpJSEval(1, "getCalendar")

stack at time of crash:
>	xpc3250.dll!XPCWrappedNative::CallMethod(XPCCallContext & ccx={...},
XPCWrappedNative::CallMode mode=CALL_METHOD)  Line 2237 + 0xf	C++
 	xpc3250.dll!XPC_WN_CallMethod(JSContext * cx=0x09170b00, JSObject *
obj=0x0723b668, unsigned int argc=0x00000001, long * argv=0x080387cc, long *
vp=0x0012e0f8)  Line 1311 + 0xb	C++
 	js3250.dll!js_Invoke(JSContext * cx=0x09170b00, unsigned int argc=0x00000001,
unsigned int flags=0x00000000)  Line 1293 + 0x20	C
 	js3250.dll!js_Interpret(JSContext * cx=0x09170b00, unsigned char *
pc=0x0735ca3a, long * result=0x0012ec6c)  Line 3566 + 0xf	C
 	js3250.dll!js_Invoke(JSContext * cx=0x09170b00, unsigned int argc=0x00000001,
unsigned int flags=0x00000002)  Line 1313 + 0x13	C
 	js3250.dll!js_InternalInvoke(JSContext * cx=0x09170b00, JSObject *
obj=0x00c4ee20, long fval=0x01807768, unsigned int flags=0x00000000, unsigned
int argc=0x00000001, long * argv=0x0012ef64, long * rval=0x0012ef68)  Line
1390 + 0x14	C
 	js3250.dll!JS_CallFunctionValue(JSContext * cx=0x09170b00, JSObject *
obj=0x00c4ee20, long fval=0x01807768, unsigned int argc=0x00000001, long *
argv=0x0012ef64, long * rval=0x0012ef68)  Line 3831 + 0x1f	C
 	gklayout.dll!nsJSContext::CallEventHandler(JSObject * aTarget=0x00c4ee20,
JSObject * aHandler=0x01807768, unsigned int argc=0x00000001, long *
argv=0x0012ef64, long * rval=0x0012ef68)  Line 1401 + 0x21	C++
 	gklayout.dll!nsJSEventListener::HandleEvent(nsIDOMEvent * aEvent=0x0407e9a0) 
Line 205 + 0x2d	C++
 	gklayout.dll!nsEventListenerManager::HandleEventSubType(nsListenerStruct *
aListenerStruct=0x0a1fe2d8, nsIDOMEvent * aDOMEvent=0x0407e9a0,
nsIDOMEventTarget * aCurrentTarget=0x030ebedc, unsigned int aSubType=0x00000002,
unsigned int aPhaseFlags=0x00000007)  Line 1557 + 0x14	C++
 	gklayout.dll!nsEventListenerManager::HandleEvent(nsPresContext *
aPresContext=0x0a84e3c0, nsEvent * aEvent=0x0012f1e8, nsIDOMEvent * *
aDOMEvent=0x0012f1b0, nsIDOMEventTarget * aCurrentTarget=0x030ebedc, unsigned
int aFlags=0x00000007, nsEventStatus * aEventStatus=0x0012f1e4)  Line 1656	C++
 	gklayout.dll!nsGlobalWindow::HandleDOMEvent(nsPresContext *
aPresContext=0x0a84e3c0, nsEvent * aEvent=0x0012f1e8, nsIDOMEvent * *
aDOMEvent=0x0012f1b0, unsigned int aFlags=0x00000007, nsEventStatus *
aEventStatus=0x0012f1e4)  Line 914	C++
 	gklayout.dll!DocumentViewerImpl::Unload()  Line 1169 + 0x23	C++
 	docshell.dll!nsDocShell::FireUnloadNotification()  Line 871	C++
 	docshell.dll!nsDocShell::Destroy()  Line 3381	C++
 	appshell.dll!nsXULWindow::Destroy()  Line 506	C++
 	appshell.dll!nsWebShellWindow::Destroy()  Line 848 + 0x9	C++
 	appshell.dll!nsWebShellWindow::HandleEvent(nsGUIEvent * aEvent=0x0012f4d8) 
Line 407	C++

the code died because:
                ((nsISupports*)p)->Release();
is dealing with a deleted p (vtable pointer = 0xdddddddd)

0 [native frame]
1 finishCalendarUnifinder() ["chrome://calendar/content/unifinder.js":220]
    this = [object ChromeWindow @ 0xcb50360]
2 calendarFinish() ["chrome://calendar/content/calendar.js":319]
    pbi = undefined
    this = [object ChromeWindow @ 0xcb50360]
3 onunload(event = [object Event @ 0xabc99e0]) ["chrome://calendar/content/calen
dar.xul":0]
    this = [object ChromeWindow @ 0xcb50360]
4 [native frame]
js[1]> getCalendar
vnk: caught + message (string) 'manager.onScriptCreated is not a function'
+ fileName (string) 'chrome://venkman/content/venkman-debugger.js'
+ lineNumber (number) 227
+ stack (string) 431 chars
+ name (string) 'TypeError'
*
 while creating script.
vnk: execution hook: function finishCalendarUnifinder() in <eval> line 1
vnk: Can't find a wrapper for function  in <eval>
** ASSERTION FAILED: Couldn't get a script wrapper **
<top>
anonymous@58
displayFrame@1957
hookDebugStop@736
callHooks@275
dispatchCommand@378
dispatch@230
eventLoopNested@1651
[anonymous]@0
vnk: Can't find a wrapper for function  in <eval>
vnk: Can't find a wrapper for function  in <eval>
vnk: Caught exception calling after hook stack:hook-debug-stop
vnk: TypeError: this.scriptWrapper has no properties @
<chrome://venkman/content/venkman-records.js> 169
vnk: FrameRecord([object
XPCWrappedNative_NoHelper])@chrome://venkman/content/venkman-records.js:169
skv_hookDebugStop([object Object])@chrome://venkman/content/venkman-views.js:2064
callHooks([object Object],false)@chrome://venkman/content/venkman-static.js:275
dispatchCommand([object Object],[object Object],undefined)@chrome://venkman/cont
ent/venkman-static.js:378
dispatch("hook-debug-stop")@chrome://venkman/content/venkman-static.js:230
eventLoopNested()@chrome://venkman/content/venkman-debugger.js:1651
@:0
QA Contact: caillon → venkman
Component is obsolete so resolving bugs as INCOMPLETE
Status: UNCONFIRMED → RESOLVED
Closed: 6 years ago
Resolution: --- → INCOMPLETE
Product: Other Applications → Other Applications Graveyard
You need to log in before you can comment on or make changes to this bug.