Closed Bug 14164 Opened 25 years ago Closed 25 years ago

Assertion failure in nsEditor::GetDocument

Categories

(Core :: DOM: Editor, defect, P3)

x86
Windows NT
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: phil, Assigned: buster)

References

Details

When  I open my IMAP inbox, I get a password dialog and a couple of assertion
failures on this line in the editor:

NS_PRECONDITION(mDocWeak, "bad state, mDocWeak weak pointer not initialized");

NTDLL! 77f7629c()
nsDebug::PreCondition(const char * 0x601d4590, const char * 0x601d4584, const
char * 0x601d4560, int 0x00000126) line 163 + 13 bytes
nsEditor::GetDocument(nsEditor * const 0x02e05490, nsIDOMDocument * *
0x0012da14) line 294 + 41 bytes
nsHTMLEditor::~nsHTMLEditor() line 176
nsHTMLEditorLog::~nsHTMLEditorLog() line 47 + 22 bytes
nsHTMLEditorLog::`scalar deleting destructor'(unsigned int 0x00000001) + 15
bytes
nsEditor::Release(nsEditor * const 0x02e05490) line 178 + 102 bytes
nsHTMLEditor::Release(nsHTMLEditor * const 0x02e05490) line 211 + 12 bytes
nsHTMLEditorLog::Release(nsHTMLEditorLog * const 0x02e05490) line 50 + 12 bytes
nsCOMPtr<nsIEditor>::assign_with_AddRef(nsISupports * 0x00000000) line 633
nsCOMPtr<nsIEditor>::operator=(nsIEditor * 0x00000000) line 533
nsGfxTextControlFrame::~nsGfxTextControlFrame() line 246
nsGfxTextControlFrame::`scalar deleting destructor'(unsigned int 0x57010e6c) +
15 bytes
nsFrame::Destroy(nsFrame * const 0x00720065, nsIPresContext & {...}) line 317 +
34 bytes
nsFrameList::DestroyFrames(nsIPresContext & {...}) line 29
nsContainerFrame::Destroy(nsContainerFrame * const 0x00740064, nsIPresContext &
{...}) line 88
nsFrameList::DestroyFrame(nsIPresContext & {...}, nsIFrame * 0x6e2f656d) line
115
nsBoxFrame::RemoveFrame(nsBoxFrame * const 0x746e6574, nsIPresContext & {...},
nsIPresShell & {...}, nsIAtom * 0x76616e2f, nsIFrame * 0x74616769) line 1388
FrameManager::RemoveFrame(FrameManager * const 0x2d6e6961, nsIPresContext &
{...}, nsIPresShell & {...}, nsIFrame * 0x0012dbc0, nsIAtom * 0x00000000,
nsIFrame * 0x00000001) line 381
nsCSSFrameConstructor::ContentRemoved(nsCSSFrameConstructor * const 0x00000000,
nsIPresContext * 0x00000000, nsIContent * 0x00010000, nsIContent * 0x0012e9ec,
int 0x0012e9ec) line 6137 + 58 bytes
nsCSSFrameConstructor::RecreateFramesForContent(nsIPresContext * 0x0304f50c,
nsIContent * 0x0012ffb0) line 7523 + 28 bytes
nsCSSFrameConstructor::AttributeChanged(nsCSSFrameConstructor * const
0x00000009, nsIPresContext * 0x10213940, nsIContent * 0x00000001, nsIAtom *
0x00000000, int 0x00583628) line 6673 + 16 bytes
StyleSetImpl::AttributeChanged(StyleSetImpl * const 0x0012ffb0, nsIPresContext *
0x10212b78 __except_handler3, nsIContent * 0x102503d8, nsIAtom * 0xffffffff, int
0x0012de18) line 909
PresShell::AttributeChanged(PresShell * const 0x6105b16d, nsIDocument *
0x0304b070, nsIContent * 0x0012de30, nsIAtom * 0x6129d16c, int 0x0304b070) line
1665 + 53 bytes
XULDocumentImpl::AttributeChanged(XULDocumentImpl * const 0x020cdf90, nsIContent
* 0xffffffff, nsIAtom * 0x0000001d, int 0x00a46ba0) line 2150
RDFElementImpl::SetAttribute(RDFElementImpl * const 0x77ed118c, int 0x26010e86,
nsIAtom * 0x9a050561, const nsString & {...}, int 0x00000000) line 2427
RDFElementImpl::SetAttribute(RDFElementImpl * const 0xffffffff, const nsString &
{...}, const nsString & {...}) line 1211 + 35 bytes
ElementSetAttribute(JSContext * 0x61130610, JSObject * 0x02fd3344, unsigned int
0xffffffff, long * 0x0012e438, long * 0x77f7d81c) line 258 + 23 bytes
js_Invoke(JSContext * 0x02891ce0, unsigned int 0x00583628, unsigned int
0x0304c980) line 654 + 26 bytes
js_Interpret(JSContext * 0x00000003, long * 0x0012ea90) line 2228 + 15 bytes
js_Invoke(JSContext * 0x00000087, unsigned int 0x0012ebb4, unsigned int
0x00000000) line 670 + 13 bytes
js_Interpret(JSContext * 0x0012f410, long * 0x77f7d81c) line 2228 + 15 bytes
js_Invoke(JSContext * 0x77f7d4bd, unsigned int 0x000007bf, unsigned int
0x77f6529b) line 670 + 13 bytes
js_InternalCall(JSContext * 0x00002030, JSObject * 0x61271694 const
nsDataObj::`vftable', long 0x00000000, unsigned int 0x0091000c, long *
0x020fd458, long * 0x00910028) line 747 + 15 bytes
JS_CallFunctionValue(JSContext * 0x000004a0, JSObject * 0x00000000, long
0x020fe000, unsigned int 0x00000000, long * 0x0175f4dc, long * 0x0094f498) line
2662 + 29 bytes
nsJSEventListener::HandleEvent(nsIDOMEvent * 0x00910000) line 110 + 43 bytes
nsEventListenerManager::HandleEvent(nsIPresContext & {...}, nsEvent *
0x00910000, nsIDOMEvent * * 0x0012fd74, unsigned int 0x61271694, nsEventStatus &
0x096a0beb) line 991 + 21 bytes
GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x00910000,
nsIPresContext & {...}, nsEvent * 0x030665e8, nsIDOMEvent * * 0x00910028,
unsigned int 0x030665f0, nsEventStatus & 0x840fc084) line 2848
nsWebShell::OnEndDocumentLoad(nsWebShell * const 0x00170e80, nsIDocumentLoader *
0x77f7e461, nsIChannel * 0x0016f6e8, unsigned int 0x00130000,
nsIDocumentLoaderObserver * 0x00001769) line 3352 + 34 bytes
nsDocLoaderImpl::FireOnEndDocumentLoad(nsDocLoaderImpl * 0x0091000c, unsigned
int 0x02111960) line 861
nsDocLoaderImpl::OnStopRequest(nsDocLoaderImpl * const 0x01d40000, nsIChannel *
0x00000000, nsISupports * 0x00000000, unsigned int 0x02112000, const unsigned
short * 0x00004000) line 747
nsLoadGroup::RemoveChannel(nsLoadGroup * const 0x02111960, nsIChannel *
0x0012f8cc, nsISupports * 0x00910000, unsigned int 0x00001790, const unsigned
short * 0x61271694 const  nsDataObj::`vftable') line 593 + 39 bytes
nsFileChannel::OnStopRequest(nsFileChannel * const 0x00910000, nsIChannel *
0x0012fd74, nsISupports * 0x61271694 const  nsDataObj::`vftable', unsigned int
0x000038a8, const unsigned short * 0x02111968) line 474
nsOnStopRequestEvent::HandleEvent(nsOnStopRequestEvent * const 0x02111968) line
269
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x00002048) line 144 + 12 bytes
PL_HandleEvent(PLEvent * 0x0012f878) line 509 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x77f9d770) line 470 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x015c9590, unsigned int 0x015c9590, unsigned int
0x011bc520, long 0x015c9460) line 938 + 9 bytes
USER32! 77e71820()
02d9dee0()
Whiteboard: fix in hand, waiting for tree to open
*** Bug 14020 has been marked as a duplicate of this bug. ***
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
fixed.  the assertions are valid and were left in place. the fix was to use
mDocWeak directly in ~nsHTMLEditor, rather than call GetDocument().
GetDocument() requires that Init() be called prior to its use.  The destructor
cannot require that Init() be called.
phil/buster, can you mark this one verified fixed??? thanks!
Whiteboard: fix in hand, waiting for tree to open
phil, please verify
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.