Closed
Bug 312651
Opened 20 years ago
Closed 9 months ago
js_ReportUncaughtException creates report without setting script error properties
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
INCOMPLETE
People
(Reporter: WeirdAl, Unassigned)
References
()
Details
(Keywords: testcase)
Note bug 104360, which may eventually hide this assertion without really fixing it.
Steps to reproduce:
(1) Apply patch from bug 312630 and rebuild debug
(2) Launch SeaMonkey navigator window
(3) Open sidebar
(4) Close SeaMonkey navigator window
We hit the assertion on the sourceLine not being defined.
00 ntdll!DbgBreakPoint
01 xpcom_core!nsDebugImpl::Break(char * aFile = 0x00df7350
"m:/mozilla/js/src/xpconnect/src/nsScriptError.cpp", int aLine = 132)+0x7e
02 xpcom_core!nsDebugImpl::Assertion(char * aStr = 0x00df7390 "Need a non-null
source code line for the console service!", char * aExpr = 0x00df7384
"sourceLine", char * aFile = 0x00df7350
"m:/mozilla/js/src/xpconnect/src/nsScriptError.cpp", int aLine = 132)+0x29e
03 xpcom_core!NSGlue_Assertion(char * aStr = 0x00df7390 "Need a non-null source
code line for the console service!", char * aExpr = 0x00df7384 "sourceLine",
char * aFile = 0x00df7350 "m:/mozilla/js/src/xpconnect/src/nsScriptError.cpp",
int aLine = 132)+0x4d
04 xpc3250!nsScriptError::Init(unsigned short * message = 0x0012eb74, unsigned
short * sourceName = 0x0012ead4, unsigned short * sourceLine = 0x00000000,
unsigned int lineNumber = 0, unsigned int columnNumber = 0, unsigned int flags =
2, char * category = 0x01a005ac "chrome javascript")+0x4a
05 gklayout!NS_ScriptErrorReporter(struct JSContext * cx = 0x00a96d80, char *
message = 0x033d2708 "TypeError: this.docShell has no properties", struct
JSErrorReport * report = 0x0354c478)+0x3c7
06 js3250!js_ReportErrorAgain(struct JSContext * cx = 0x00a96d80, char * message
= 0x03b62200 "TypeError: this.docShell has no properties", struct JSErrorReport
* reportp = 0x0354c478)+0xc9
07 js3250!js_ReportUncaughtException(struct JSContext * cx = 0x00a96d80)+0x32d
08 js3250!JS_CallFunctionValue(struct JSContext * cx = 0x00a96d80, struct
JSObject * obj = 0x03164eb0, long fval = 51789496, unsigned int argc = 0, long *
argv = 0x00000000, long * rval = 0x0012ed44)+0x3b
08 js3250!JS_CallFunctionValue(struct JSContext * cx = 0x00a96d80, struct
JSObject * obj = 0x03164eb0, long fval = 51789496, unsigned int argc = 0, long *
argv = 0x00000000, long * rval = 0x0012ed44)+0x3b
0a gklayout!nsXBLPrototypeBinding::BindingDetached(class nsIContent *
aBoundElement = 0x030c0978)+0x2e
0b gklayout!nsXBLBinding::ExecuteDetachedHandler(void)+0x25
0c gklayout!ExecuteDetachedHandler(void * aBinding = 0x0318c4f8, void * aClosure
= 0x00000000)+0x39
0d xpcom_core!nsVoidArray::EnumerateForwards(<function> * aFunc = 0x01609cf0,
void * aData = 0x00000000)+0x52
0e gklayout!nsBindingManager::ExecuteDetachedHandlers(void)+0x42
0f gklayout!nsGlobalWindow::HandleDOMEvent(class nsPresContext * aPresContext =
0x02241d08, class nsEvent * aEvent = 0x0012eec4, class nsIDOMEvent ** aDOMEvent
= 0x0012ee88, unsigned int aFlags = 7, nsEventStatus * aEventStatus =
0x0012eec0)+0x2c8
10 gklayout!DocumentViewerImpl::PageHide(int aIsUnload = 1)+0xef
11 docshell!nsDocShell::FirePageHideNotification(int aIsUnload = 1)+0x5c
12 docshell!nsDocShell::Destroy(void)+0x165
13 appshell!nsXULWindow::Destroy(void)+0x348
14 appshell!nsWebShellWindow::Destroy(void)+0x14a
15 appshell!nsWebShellWindow::HandleEvent(class nsGUIEvent * aEvent =
0x0012f1d8)+0x291
16 gkwidget!nsWindow::DispatchEvent(class nsGUIEvent * event = 0x0012f1d8,
nsEventStatus * aStatus = 0x0012f1bc)+0xb5
17 gkwidget!nsWindow::DispatchWindowEvent(class nsGUIEvent * event =
0x0012f1d8)+0x24
18 gkwidget!nsWindow::DispatchStandardEvent(unsigned int aMsg = 0x65)+0x50
19 gkwidget!nsWindow::ProcessMessage(unsigned int msg = 0x10, unsigned int
wParam = 0, long lParam = 0, long * aRetValue = 0x0012f614)+0x618
1a gkwidget!nsWindow::WindowProc(struct HWND__ * hWnd = 0x001c03e0, unsigned int
msg = 0x10, unsigned int wParam = 0, long lParam = 0)+0x134
Reporter | ||
Comment 1•20 years ago
|
||
reportp 0x0354c478 struct JSErrorReport *
|-filename 0x03e24af8 "chrome://global/content/bindings/browser.xml"
|-lineno 0
|-linebuf 0x00000000 ""
|-tokenptr 0x00000000 ""
|-uclinebuf 0x00000000
|-uctokenptr 0x00000000
|-flags 2
|-errorNumber 0x27
|-ucmessage 0x03d4a988
|-messageArgs 0x02a1d8e8
Comment 2•20 years ago
|
||
We don't keep source lines around for reference by runtime errors. We never
have. Only compile-time errors receive such easy luxury.
/be
Reporter | ||
Comment 3•20 years ago
|
||
I'm going to replace the assertion I would've added for bug 312630 with a
warning. There's just too many instances to justify crashing the program.
Keywords: assertion
Updated•20 years ago
|
Flags: testcase-
Assignee | ||
Updated•11 years ago
|
Assignee: general → nobody
Updated•3 years ago
|
Severity: normal → S3
Updated•9 months ago
|
Status: NEW → RESOLVED
Closed: 9 months ago
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•