Closed Bug 34182 Opened 25 years ago Closed 25 years ago

assertions galore in nsScriptError::AddRef() because ref count not initialized

Categories

(SeaMonkey :: General, defect, P3)

x86
Windows NT
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: sspitzer, Assigned: mike+mozilla)

Details

I'm getting these assertsion all the time (see below). I think the following patch will fix it: Index: nsScriptError.cpp =================================================================== RCS file: /cvsroot/mozilla/xpfe/components/console/nsScriptError.cpp,v retrieving revision 1.2 diff -p -r1.2 nsScriptError.cpp *** nsScriptError.cpp 2000/03/30 09:40:11 1.2 --- nsScriptError.cpp 2000/04/01 09:29:17 *************** *** 30,36 **** NS_IMPL_THREADSAFE_ISUPPORTS2(nsScriptError, nsIConsoleMessage, nsIScriptError); ! nsScriptError::nsScriptError() {}; nsScriptError::~nsScriptError() {}; // nsIConsoleMessage methods --- 30,40 ---- NS_IMPL_THREADSAFE_ISUPPORTS2(nsScriptError, nsIConsoleMessage, nsIScriptError); ! nsScriptError::nsScriptError() ! { ! NS_INIT_REFCNT(); ! } ! nsScriptError::~nsScriptError() {}; // nsIConsoleMessage methods NTDLL! 77f7629c() nsDebug::Assertion(const char * 0x0342687c, const char * 0x03426864, const char * 0x03426824, int 31) line 189 + 13 bytes nsDebug::PreCondition(const char * 0x0342687c, const char * 0x03426864, const char * 0x03426824, int 31) line 282 + 21 bytes nsScriptError::AddRef(nsScriptError * const 0x048196a0) line 31 + 36 bytes nsScriptErrorConstructor(nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012e100) line 29 + 141 bytes nsGenericFactory::CreateInstance(nsGenericFactory * const 0x033aa8d0, nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012e100) line 48 nsComponentManagerImpl::CreateInstance(nsComponentManagerImpl * const 0x00c54520, const nsID & {...}, nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012e100) line 1156 + 24 bytes nsComponentManagerImpl::CreateInstanceByProgID(nsComponentManagerImpl * const 0x00c54520, const char * 0x0038e8a4, nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012e100) line 1196 nsComponentManager::CreateInstance(const char * 0x0038e8a4, nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012e100) line 94 nsCreateInstanceByProgID::operator()(const nsID & {...}, void * * 0x0012e100) line 122 + 27 bytes nsCOMPtr<nsIScriptError>::assign_from_helper(const nsCOMPtr_helper & {...}, const nsID & {...}) line 825 + 18 bytes nsCOMPtr<nsIScriptError>::nsCOMPtr<nsIScriptError>(const nsCOMPtr_helper & {...}) line 528 nsDocShell::ReportScriptError(nsDocShell * const 0x024f8808, const char * 0x04819910, const char * 0x00000000, int 0, const char * 0x00000000) line 1939 NS_ScriptErrorReporter(JSContext * 0x0202f450, const char * 0x04819910, JSErrorReport * 0x0481f160) line 101 js_ReportErrorAgain(JSContext * 0x0202f450, const char * 0x048190c0, JSErrorReport * 0x0481f160) line 557 + 21 bytes js_ReportUncaughtException(JSContext * 0x0202f450) line 665 + 17 bytes JS_CallFunctionValue(JSContext * 0x0202f450, JSObject * 0x02209b38, long 35691328, unsigned int 1, long * 0x0012e54c, long * 0x0012e4f8) line 2796 + 9 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x0202f130, void * 0x02209b38, void * 0x02209b40, unsigned int 1, void * 0x0012e54c, int * 0x0012e548) line 730 + 33 bytes nsJSEventListener::HandleEvent(nsIDOMEvent * 0x048194d4) line 128 + 57 bytes nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x02b43d90, nsIDOMEvent * 0x048194d4, unsigned int 8, unsigned int 7) line 703 + 19 bytes nsEventListenerManager::HandleEvent(nsIPresContext * 0x0202f6a0, nsEvent * 0x0012ea7c, nsIDOMEvent * * 0x0012ea48, unsigned int 7, nsEventStatus * 0x0012eac0) line 1474 + 35 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x02b42240, nsIPresContext * 0x0202f6a0, nsEvent * 0x0012ea7c, nsIDOMEvent * * 0x0012ea48, unsigned int 1, nsEventStatus * 0x0012eac0) line 3207 nsMenuFrame::Execute() line 1272 nsMenuFrame::Enter(nsMenuFrame * const 0x022900a0) line 949 nsMenuPopupFrame::ShortcutNavigation(nsMenuPopupFrame * const 0x021c6274, unsigned int 115, int & 1) line 990 nsMenuListener::KeyPress(nsIDOMEvent * 0x04819534) line 157 nsEventListenerManager::HandleEvent(nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 1022 + 17 bytes nsXULDocument::HandleDOMEvent(nsXULDocument * const 0x0201b6d0, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 1967 nsXULElement::HandleDOMEvent(nsXULElement * const 0x02983f90, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 3198 + 39 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x02bd1070, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 3196 nsXULElement::HandleDOMEvent(nsXULElement * const 0x02bd2cf0, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 3196 nsXULElement::HandleDOMEvent(nsXULElement * const 0x02bd2590, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 3196 nsXULElement::HandleDOMEvent(nsXULElement * const 0x02bd20a0, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 3196 nsXULElement::HandleChromeEvent(nsXULElement * const 0x02bd20c8, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 4329 + 39 bytes GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x02ed6260, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 376 nsDocument::HandleDOMEvent(nsDocument * const 0x047d6980, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 2576 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 1022 nsHTMLHtmlElement::HandleDOMEvent(nsHTMLHtmlElement * const 0x047d2b98, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 187 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 1012 nsHTMLBodyElement::HandleDOMEvent(nsHTMLBodyElement * const 0x0497d268, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 849 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 1012 nsHTMLFormElement::HandleDOMEvent(nsHTMLFormElement * const 0x03ce031c, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 4, nsEventStatus * 0x0012f58c) line 466 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x0012f4a8, unsigned int 1, nsEventStatus * 0x0012f58c) line 1012 nsHTMLTextAreaElement::HandleDOMEvent(nsHTMLTextAreaElement * const 0x044a584c, nsIPresContext * 0x047d0330, nsEvent * 0x0012f548, nsIDOMEvent * * 0x00000000, unsigned int 1, nsEventStatus * 0x0012f58c) line 536 nsEnderEventListener::KeyPress(nsIDOMEvent * 0x0481f514) line 3782 + 62 bytes nsEventListenerManager::HandleEvent(nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 1022 + 17 bytes nsDocument::HandleDOMEvent(nsDocument * const 0x046ce8f0, nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 2579 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 1042 + 39 bytes nsHTMLHtmlElement::HandleDOMEvent(nsHTMLHtmlElement * const 0x046ce628, nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 187 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 1035 + 39 bytes nsHTMLBodyElement::HandleDOMEvent(nsHTMLBodyElement * const 0x046ce558, nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 2, nsEventStatus * 0x0012fa24) line 849 nsGenericElement::HandleDOMEvent(nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x0012f80c, unsigned int 1, nsEventStatus * 0x0012fa24) line 1035 + 39 bytes nsHTMLBRElement::HandleDOMEvent(nsHTMLBRElement * const 0x047c4a68, nsIPresContext * 0x046ccf00, nsEvent * 0x0012fabc, nsIDOMEvent * * 0x00000000, unsigned int 1, nsEventStatus * 0x0012fa24) line 214 PresShell::HandleEvent(PresShell * const 0x047948c4, nsIView * 0x047b52a0, nsGUIEvent * 0x0012fabc, nsEventStatus * 0x0012fa24, int & 1) line 3441 + 39 bytes nsView::HandleEvent(nsView * const 0x047b52a0, nsGUIEvent * 0x0012fabc, unsigned int 8, nsEventStatus * 0x0012fa24, int & 1) line 811 nsView::HandleEvent(nsView * const 0x047b6950, nsGUIEvent * 0x0012fabc, unsigned int 8, nsEventStatus * 0x0012fa24, int & 1) line 784 nsView::HandleEvent(nsView * const 0x04795d00, nsGUIEvent * 0x0012fabc, unsigned int 28, nsEventStatus * 0x0012fa24, int & 1) line 784 nsViewManager2::DispatchEvent(nsViewManager2 * const 0x04795ee0, nsGUIEvent * 0x0012fabc, nsEventStatus * 0x0012fa24) line 1349 HandleEvent(nsGUIEvent * 0x0012fabc) line 69 nsWindow::DispatchEvent(nsWindow * const 0x047b58b4, nsGUIEvent * 0x0012fabc, nsEventStatus & nsEventStatus_eIgnore) line 498 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012fabc) line 519 nsWindow::DispatchKeyEvent(unsigned int 131, unsigned short 115, unsigned int 0) line 1903 + 15 bytes nsWindow::OnChar(unsigned int 115, unsigned int 0, unsigned char 0) line 2009 nsWindow::ProcessMessage(unsigned int 258, unsigned int 115, long 2031617, long * 0x0012fd94) line 2165 + 33 bytes nsWindow::WindowProc(HWND__ * 0x00010292, unsigned int 258, unsigned int 115, long 2031617) line 676 + 27 bytes USER32! 77e71820()
I checked in the fix. it was the right thing to do. I also checked in a similar fix to nsConsoleMessage.cpp cls@seawood.org reviewed the changes.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
adding cls to the cc list.
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.