Closed Bug 243294 Opened 21 years ago Closed 20 years ago

M17rc2 Crash [@ nsCaret::GetViewForRendering] when printing a schedule from www.matkahuolto.info

Categories

(Core :: Printing: Output, defect)

x86
Windows XP
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla1.7final

People

(Reporter: emaijala+moz, Assigned: sspitzer)

References

()

Details

(4 keywords)

Crash Data

Attachments

(4 files)

Running trunk build 2004050609 (the last one with working talkback) on WinXP. The problem exists also in the latest trunk build and 1.7 branch build. Use the specified URL or do the following: 1. browse to www.matkahuolto.info 2. put "helsinki" to the field "Lähtöpaikka" 3. put "rauma" to the field "Määräpaikka" 4. press enter 5. press enter again to confirm Then print out the schedule page and observe the crash. I've got talkbacks from it, but talkback-public seems to be broken. One ID is TB44076Y.
Flags: blocking1.7?
Whiteboard: TB44076Y
That's what I meant when I said "talkback-public seems to be broken".
talkback-public is ok now: http://talkback-public.mozilla.org/talkback/fastfind.jsp?search=2&type=iid&id=TB44076Y stack signature is "nsCaret::GetViewForRendering aa102e53"
This is the stack from a recent debug build. It looks quite different than the one in talkback-public.
Attached file Crash stack
Oops, that one didn't crash yet as it was an assertion failure (bad enough, but not fatal in this case). This is where an access violation occurred a few assertion failures later.
Actually, the talkback stack makes sense. It didn't crash when the caret wasn't blinking in the first field.
This crash is showing up as a topcrasher for Mozilla 1.7 rc2. Here are just a couple of sets of crahes from Talkback: Count Offset Real Signature [ 5 nsCaret::GetViewForRendering 68816d7a - nsCaret::GetViewForRendering ] Crash date range: 18-MAY-04 to 24-MAY-04 Min/Max Seconds since last crash: 8229 - 583173 Min/Max Runtime: 10051 - 583173 Count Platform List 5 [Windows NT 5.0 build 2195] Count Build Id List 5 2004051408 No of Unique Users 5 Stack trace(Frame) nsCaret::GetViewForRendering [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 836] nsCaret::GetCaretRectAndInvert [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 958] nsCaret::DrawCaret [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 942] nsCaret::StartBlinking [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 512] nsCaret::SetCaretVisible [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 232] PresShell::SetCaretEnabled [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 3119] nsTextInputSelectionImpl::SetCaretEnabled [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/forms/src/nsTextControlFrame.cpp line 596] nsTextEditorFocusListener::Focus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/editor/libeditor/text/nsEditorEventListeners.cpp line 1044] DispatchToInterface [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp line 128] nsEventListenerManager::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp line 1524] nsGenericElement::HandleDOMEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/base/src/nsGenericElement.cpp line 1960] nsHTMLInputElement::HandleDOMEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/html/content/src/nsHTMLInputElement.cpp line 1399] nsEventStateManager::SendFocusBlur [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 4270] nsEventStateManager::SetContentState [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 3933] nsHTMLInputElement::SetFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/html/content/src/nsHTMLInputElement.cpp line 1110] nsEventStateManager::PreHandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 751] PresShell::HandleEventInternal [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 6033] PresShell::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 5961] nsViewManager::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp line 2239] nsViewManager::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp line 2029] HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsView.cpp line 79] nsWindow::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1071] nsWindow::DispatchWindowEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1088] nsWindow::DispatchFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 5454] nsWindow::ProcessMessage [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 4202] nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1350] USER32.dll + 0x1ef0 (0x77e11ef0) USER32.dll + 0x3869 (0x77e13869) USER32.dll + 0x38ab (0x77e138ab) ntdll.dll + 0x1ff57 (0x77f9ff57) GlobalWindowImpl::Focus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 2526] nsWebShellWindow::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsWebShellWindow.cpp line 610] nsWindow::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1071] nsWindow::DispatchWindowEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1088] nsWindow::DispatchFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 5454] nsWindow::ProcessMessage [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 4195] nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1350] USER32.dll + 0x1ef0 (0x77e11ef0) USER32.dll + 0x3869 (0x77e13869) USER32.dll + 0x38ab (0x77e138ab) ntdll.dll + 0x1ff57 (0x77f9ff57) USER32.dll + 0x343f (0x77e1343f) USER32.dll + 0x1ef0 (0x77e11ef0) USER32.dll + 0x3d1e (0x77e13d1e) USER32.dll + 0x6e9b (0x77e16e9b) nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1361] USER32.dll + 0x1ef0 (0x77e11ef0) USER32.dll + 0x3869 (0x77e13869) USER32.dll + 0x38ab (0x77e138ab) ntdll.dll + 0x1ff57 (0x77f9ff57) nsXULWindow::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsXULWindow.cpp line 483] nsWebShellWindow::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsWebShellWindow.cpp line 1664] nsChromeTreeOwner::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsChromeTreeOwner.cpp line 330] GlobalWindowImpl::ReallyCloseWindow [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 3691] GlobalWindowImpl::Close [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 3677] XPTC_InvokeByIndex [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp line 102] XPCWrappedNative::CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp line 2029] XPC_WN_CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp line 1288] js_Invoke [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c line 943] js_Interpret [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c line 2968] js_Invoke [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c line 959] nsXPCWrappedJSClass::CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappedjsclass.cpp line 1338] nsXPCWrappedJS::CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappedjs.cpp line 450] PrepareAndDispatch [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcstubs.cpp line 119] (58178) URL: www.gartner.com (58178) Comments: searches within searches search features seems to use lots of javascript (55290) URL: http://search.barnesandnoble.com/booksearch/isbninquiry.asp?ISBN=0735611297&userid=ZYw1YpfUn6&cds2Pid=946&pdf=y (55290) Comments: Printing a page 1 to 1 (51527) URL: http://quicken.com/investments/quotes/?p=vfinx%2Cvgsix&B1=Go (51527) Comments: attempting to print a page ==================================================================================================== Count Offset Real Signature [ 1 nsCaret::GetViewForRendering ffdb4f12 - nsCaret::GetViewForRendering ] Crash date range: 23-MAY-04 to 23-MAY-04 Min/Max Seconds since last crash: 91 - 91 Min/Max Runtime: 8674 - 8674 Count Platform List 1 [Windows NT 5.1 build 2600] Count Build Id List 1 2004051408 No of Unique Users 1 Stack trace(Frame) nsCaret::GetViewForRendering [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 836] nsCaret::GetCaretRectAndInvert [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 958] nsCaret::DrawCaret [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 942] nsCaret::StartBlinking [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 512] nsCaret::SetCaretVisible [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/base/src/nsCaret.cpp line 232] PresShell::SetCaretEnabled [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 3119] nsTextInputSelectionImpl::SetCaretEnabled [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/forms/src/nsTextControlFrame.cpp line 596] nsTextEditorFocusListener::Focus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/editor/libeditor/text/nsEditorEventListeners.cpp line 1044] DispatchToInterface [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp line 128] nsEventListenerManager::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp line 1524] nsGenericElement::HandleDOMEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/base/src/nsGenericElement.cpp line 1960] nsHTMLInputElement::HandleDOMEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/html/content/src/nsHTMLInputElement.cpp line 1399] nsEventStateManager::SendFocusBlur [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 4270] nsEventStateManager::SetContentState [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 3933] nsHTMLInputElement::SetFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/html/content/src/nsHTMLInputElement.cpp line 1110] nsEventStateManager::PreHandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventStateManager.cpp line 751] PresShell::HandleEventInternal [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 6033] PresShell::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp line 5961] nsViewManager::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp line 2239] nsViewManager::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp line 2029] HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/view/src/nsView.cpp line 79] nsWindow::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1071] nsWindow::DispatchWindowEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1088] nsWindow::DispatchFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 5454] nsWindow::ProcessMessage [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 4202] nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1350] USER32.dll + 0x857a (0x77d8857a) USER32.dll + 0x867b (0x77d8867b) USER32.dll + 0x961e (0x77d8961e) USER32.dll + 0x9ca9 (0x77d89ca9) ntdll.dll + 0xfb73 (0x77ccfb73) GlobalWindowImpl::Focus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 2526] nsWebShellWindow::HandleEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsWebShellWindow.cpp line 610] nsWindow::DispatchEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1071] nsWindow::DispatchWindowEvent [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1088] nsWindow::DispatchFocus [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 5454] nsWindow::ProcessMessage [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 4195] nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1350] USER32.dll + 0x857a (0x77d8857a) USER32.dll + 0x867b (0x77d8867b) USER32.dll + 0x961e (0x77d8961e) USER32.dll + 0x9ca9 (0x77d89ca9) ntdll.dll + 0xfb73 (0x77ccfb73) USER32.dll + 0x8bb9 (0x77d88bb9) USER32.dll + 0x8c19 (0x77d88c19) nsWindow::DefaultWindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1375] USER32.dll + 0x857a (0x77d8857a) USER32.dll + 0x867b (0x77d8867b) USER32.dll + 0xacba (0x77d8acba) USER32.dll + 0xace0 (0x77d8ace0) nsWindow::WindowProc [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp line 1361] USER32.dll + 0x857a (0x77d8857a) USER32.dll + 0x867b (0x77d8867b) USER32.dll + 0x961e (0x77d8961e) USER32.dll + 0x9ca9 (0x77d89ca9) ntdll.dll + 0xfb73 (0x77ccfb73) nsXULWindow::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsXULWindow.cpp line 483] nsWebShellWindow::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsWebShellWindow.cpp line 1664] nsChromeTreeOwner::Destroy [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsChromeTreeOwner.cpp line 330] GlobalWindowImpl::ReallyCloseWindow [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 3691] GlobalWindowImpl::Close [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp line 3677] XPTC_InvokeByIndex [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp line 102] XPCWrappedNative::CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp line 2029] XPC_WN_CallMethod [d:/BUILDS/tinderbox/Mozilla1.7/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp line 1288] (57854) URL: www.bn.com (57854) Comments: Printing out some book information from bn.com
Keywords: topcrash
Summary: Crash when printing a schedule from www.matkahuolto.info → M17rc2 Crash [@ nsCaret::GetViewForRendering] when printing a schedule from www.matkahuolto.info
Flags: blocking1.7? → blocking1.7+
if we get closer to test case and fix for 1.7 renominate..
Flags: blocking1.8a2+
Flags: blocking1.7-
Flags: blocking1.7+
this might be bulletproofed (wall papered, as waterson called it) for 1.7 with a null check. the crash comes from nsCaret::GetViewForRendering(): else { outClipRect = returnView->GetBounds(); } returnView is null. gkgfx.dll!nsRect::nsRect(const nsRect & aRect={...}) Line 57 + 0xd C++ gklayout.dll!nsIView::GetBounds() Line 215 + 0x17 C++ > gklayout.dll!nsCaret::GetViewForRendering(nsIFrame * caretFrame=0x038fc658, nsICaret::EViewCoordinates coordType=eRenderingViewCoordinates, nsPoint & viewOffset={...}, nsRect & outClipRect={...}, nsIView * * outRenderingView=0x0012c678, nsIView * * outRelativeView=0x00000000) Line 832 + 0xc C++ gklayout.dll!nsCaret::GetCaretRectAndInvert() Line 958 C++ gklayout.dll!nsCaret::DrawCaret() Line 942 C++ gklayout.dll!nsCaret::StartBlinking() Line 512 C++ gklayout.dll!nsCaret::SetCaretVisible(int inMakeVisible=1) Line 231 + 0x8 C++ gklayout.dll!PresShell::SetCaretEnabled(int aInEnable=1) Line 3115 + 0x21 C++ gklayout.dll!nsTextInputSelectionImpl::SetCaretEnabled(int enabled=1) Line 596 C++ editor.dll!nsTextEditorFocusListener::Focus(nsIDOMEvent * aEvent=0x039a31a0) Line 1044 C++ gklayout.dll!DispatchToInterface(nsIDOMEvent * aEvent=0x039a31a0, nsIDOMEventListener * aListener=0x038fd638, unsigned int (nsIDOMEvent *)* aMethod=0x016308a0, const nsID & aIID={...}, int * aHasInterface=0x0012c800) Line 127 + 0xb C++ gklayout.dll!nsEventListenerManager::HandleEvent(nsIPresContext * aPresContext=0x02fadb08, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x0012c9c0, nsIDOMEventTarget * aCurrentTarget=0x039937e8, unsigned int aFlags=7, nsEventStatus * aEventStatus=0x0012cd20) Line 1520 + 0x23 C++ gklayout.dll!nsGenericElement::HandleDOMEvent(nsIPresContext * aPresContext=0x02fadb08, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x0012c9c0, unsigned int aFlags=7, nsEventStatus * aEventStatus=0x0012cd20) Line 1960 C++ gklayout.dll!nsHTMLInputElement::HandleDOMEvent(nsIPresContext * aPresContext=0x02fadb08, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x00000000, unsigned int aFlags=1, nsEventStatus * aEventStatus=0x0012cd20) Line 1396 + 0x1f C++ gklayout.dll!nsEventStateManager::SendFocusBlur(nsIPresContext * aPresContext=0x02fadb08, nsIContent * aContent=0x0383ea18, int aEnsureWindowHasFocus=1) Line 4271 C++ gklayout.dll!nsEventStateManager::SetContentState(nsIContent * aContent=0x0383ea18, int aState=2) Line 3934 C++ gklayout.dll!nsHTMLInputElement::SetFocus(nsIPresContext * aPresContext=0x02fadb08) Line 1110 C++ gklayout.dll!nsEventStateManager::PreHandleEvent(nsIPresContext * aPresContext=0x02cddde0, nsEvent * aEvent=0x0012d5dc, nsIFrame * aTargetFrame=0x02f51324, nsEventStatus * aStatus=0x0012d410, nsIView * aView=0x02c82660) Line 751 C++ gklayout.dll!PresShell::HandleEventInternal(nsEvent * aEvent=0x0012d5dc, nsIView * aView=0x02c82660, unsigned int aFlags=1, nsEventStatus * aStatus=0x0012d410) Line 6030 + 0x34 C++ gklayout.dll!PresShell::HandleEvent(nsIView * aView=0x02c82660, nsGUIEvent * aEvent=0x0012d5dc, nsEventStatus * aEventStatus=0x0012d410, int aForceHandle=1, int & aHandled=1) Line 5929 + 0x19 C++ gklayout.dll!nsViewManager::HandleEvent(nsView * aView=0x02c82660, nsGUIEvent * aEvent=0x0012d5dc, int aCaptured=0) Line 2239 C++ gklayout.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x0012d5dc, nsEventStatus * aStatus=0x0012d538) Line 2025 + 0x14 C++ gklayout.dll!HandleEvent(nsGUIEvent * aEvent=0x0012d5dc) Line 79 C++ gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012d5dc, nsEventStatus & aStatus=nsEventStatus_eIgnore) Line 1067 + 0xa C++ gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012d5dc) Line 1088 C++ gkwidget.dll!nsWindow::DispatchFocus(unsigned int aEventType=107, int isMozWindowTakingFocus=1) Line 5453 + 0xf C++ gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=7, unsigned int wParam=460144, long lParam=0, long * aRetValue=0x0012da3c) Line 4198 + 0x17 C++ gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x0007057c, unsigned int msg=7, unsigned int wParam=460144, long lParam=0) Line 1349 + 0x1b C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d47998() gkwidget.dll!nsWindow::SetFocus(int aRaise=1) Line 2220 C++ gklayout.dll!GlobalWindowImpl::Focus() Line 2523 + 0x19 C++ appshell.dll!nsWebShellWindow::HandleEvent(nsGUIEvent * aEvent=0x0012dd9c) Line 610 C++ gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012dd9c, nsEventStatus & aStatus=nsEventStatus_eIgnore) Line 1067 + 0xa C++ gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012dd9c) Line 1088 C++ gkwidget.dll!nsWindow::DispatchFocus(unsigned int aEventType=105, int isMozWindowTakingFocus=1) Line 5453 + 0xf C++ gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=7, unsigned int wParam=198452, long lParam=0, long * aRetValue=0x0012e1fc) Line 4194 + 0x17 C++ gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x00070570, unsigned int msg=7, unsigned int wParam=198452, long lParam=0) Line 1349 + 0x1b C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d4582b() user32.dll!77d49bf3() user32.dll!77d458ce() user32.dll!77d45885() gkwidget.dll!nsWindow::DefaultWindowProc(HWND__ * hWnd=0x00070570, unsigned int msg=6, unsigned int wParam=1, long lParam=460408) Line 1375 C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d45b2c() user32.dll!77d45b4b() gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x00070570, unsigned int msg=6, unsigned int wParam=1, long lParam=460408) Line 1356 + 0x1f C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d478fd() gkwidget.dll!nsWindow::PlaceBehind(nsTopLevelWidgetZPlacement aPlacement=eZPlacementTop, nsIWidget * aWidget=0x00000000, int aActivate=1) Line 1817 C++ appshell.dll!nsXULWindow::Destroy() Line 483 C++ appshell.dll!nsWebShellWindow::Destroy() Line 1663 + 0x9 C++ appshell.dll!nsChromeTreeOwner::Destroy() Line 330 C++ gklayout.dll!GlobalWindowImpl::ReallyCloseWindow() Line 3691 C++ gklayout.dll!GlobalWindowImpl::Close() Line 3675 + 0x10 C++ xpcom.dll!XPTC_InvokeByIndex(nsISupports * that=0x037d4c1c, unsigned int methodIndex=80, unsigned int paramCount=0, nsXPTCVariant * params=0x0012ea40) Line 102 C++ xpc3250.dll!XPCWrappedNative::CallMethod(XPCCallContext & ccx={...}, XPCWrappedNative::CallMode mode=CALL_METHOD) Line 2027 + 0x1e C++ xpc3250.dll!XPC_WN_CallMethod(JSContext * cx=0x00ab4568, JSObject * obj=0x02cf4360, unsigned int argc=0, long * argv=0x0399cf0c, long * vp=0x0012ed14) Line 1287 + 0xe C++ js3250.dll!js_Invoke(JSContext * cx=0x00ab4568, unsigned int argc=0, unsigned int flags=0) Line 941 + 0x20 C js3250.dll!js_Interpret(JSContext * cx=0x00ab4568, long * result=0x0012f68c) Line 2967 + 0xf C js3250.dll!js_Invoke(JSContext * cx=0x00ab4568, unsigned int argc=4, unsigned int flags=2) Line 958 + 0xd C xpc3250.dll!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS * wrapper=0x038a8328, unsigned short methodIndex=3, const nsXPTMethodInfo * info=0x033b5558, nsXPTCMiniVariant * nativeParams=0x0012f9a8) Line 1336 + 0x14 C++ xpc3250.dll!nsXPCWrappedJS::CallMethod(unsigned short methodIndex=3, const nsXPTMethodInfo * info=0x033b5558, nsXPTCMiniVariant * params=0x0012f9a8) Line 450 C++ xpcom.dll!PrepareAndDispatch(nsXPTCStubBase * self=0x038a8328, unsigned int methodIndex=3, unsigned int * args=0x0012fa70, unsigned int * stackBytesToPop=0x0012fa60) Line 117 + 0x1c C++ xpcom.dll!SharedStub() Line 147 C++ embedcomponents.dll!nsPrintProgress::OnStateChange(nsIWebProgress * aWebProgress=0x00000000, nsIRequest * aRequest=0x00000000, unsigned int aStateFlags=131088, unsigned int aStatus=0) Line 257 C++ embedcomponents.dll!nsPrintingPromptService::OnStateChange(nsIWebProgress * aWebProgress=0x00000000, nsIRequest * aRequest=0x00000000, unsigned int aStateFlags=131088, unsigned int aStatus=0) Line 340 C++ gklayout.dll!nsPrintData::DoOnProgressChange(nsVoidArray & aListeners={...}, int aProgess=100, int aMaxProgress=100, int aDoStartStop=1, int aFlag=131088) Line 194 C++ gklayout.dll!nsPrintData::OnEndPrinting() Line 172 + 0x17 C++ gklayout.dll!nsPrintData::~nsPrintData() Line 124 C++ gklayout.dll!nsPrintData::`scalar deleting destructor'() + 0xf C++ gklayout.dll!nsPrintEngine::Destroy() Line 292 + 0x1f C++ gklayout.dll!DocumentViewerImpl::OnDonePrinting() Line 3843 C++ gklayout.dll!HandlePLEvent(PLEvent * aEvent=0x0389c628) Line 4579 C++ xpcom.dll!PL_HandleEvent(PLEvent * self=0x0389c628) Line 673 + 0xa C xpcom.dll!PL_ProcessPendingEvents(PLEventQueue * self=0x00a28ed8) Line 608 + 0x9 C xpcom.dll!_md_EventReceiverProc(HWND__ * hwnd=0x00070692, unsigned int uMsg=49603, unsigned int wParam=0, long lParam=10653400) Line 1414 + 0x9 C user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d43d79() user32.dll!77d43fd4() user32.dll!77d43ddf() gkwidget.dll!nsAppShell::Run() Line 135 C++ appshell.dll!nsAppShellService::Run() Line 524 C++ mozilla.exe!main1(int argc=4, char * * argv=0x002a57b8, nsISupports * nativeApp=0x009d1430) Line 1303 + 0x20 C++ mozilla.exe!main(int argc=4, char * * argv=0x002a57b8) Line 1780 + 0x25 C++ mozilla.exe!mainCRTStartup() Line 398 + 0x11 C kernel32.dll!77e814c7()
I have a bullet proofer, maybe someone like roc should review?
Attachment #149477 - Flags: superreview?(roc)
Attachment #149477 - Flags: review?(bryner)
The best fix would be to never mess with the caret while printing, since that makes no sense. I think a better fix would be to make this loop here http://lxr.mozilla.org/mozilla/source/layout/base/src/nsCaret.cpp#797 while (PR_TRUE) and change "if (theView->HasWidget())" to "if (theView->HasWidget() || !theView->GetParent())" --- treat the top of the view tree as if it has a parent widget, even if it doesn't. That will stop this crash because returnView will always get set to something non-null. Similarly, later on, "if (!returnView && theView->HasWidget())" should be "if (!returnView && (theView->HasWidget() || !theView->GetParent()))". Oh yeah, the very best fix of all would be to rip out this caret crap and draw the caret as part of the normal frame painting code.
roc, thanks for the suggestion. I'll go try out your "better fix" (not the "very best fix".) want to fix this top crasher for 1.7 final (and trunk)
Assignee: core.printing → sspitzer
Target Milestone: --- → mozilla1.7final
let me attach the patch that roc suggested. (maybe I did the wrong thing?) with the suggested patch it still crashes, but in a different place. this time we crash in nsRenderingContextWin::Init() because aWindow is null. HDC tdc = (HDC)aWindow->GetNativeData(NS_NATIVE_GRAPHIC); > gkgfxwin.dll!nsRenderingContextWin::Init(nsIDeviceContext * aContext=0x034610a8, nsIWidget * aWindow=0x00000000) Line 384 + 0x5 C++ gkgfx.dll!DeviceContextImpl::InitRenderingContext(nsIRenderingContext * aContext=0x03974738, nsIWidget * aWin=0x00000000) Line 231 C++ gkgfx.dll!DeviceContextImpl::CreateRenderingContext(nsIView * aView=0x038e3d40, nsIRenderingContext * & aContext=0x00000000) Line 143 + 0x1a C++ gklayout.dll!nsCaret::GetCaretRectAndInvert() Line 982 + 0x4c C++ gklayout.dll!nsCaret::DrawCaret() Line 943 C++ gklayout.dll!nsCaret::StartBlinking() Line 512 C++ gklayout.dll!nsCaret::SetCaretVisible(int inMakeVisible=1) Line 231 + 0x8 C++ gklayout.dll!PresShell::SetCaretEnabled(int aInEnable=1) Line 3115 + 0x21 C++ gklayout.dll!nsTextInputSelectionImpl::SetCaretEnabled(int enabled=1) Line 596 C++ editor.dll!nsTextEditorFocusListener::Focus(nsIDOMEvent * aEvent=0x03973f28) Line 1044 C++ gklayout.dll!DispatchToInterface(nsIDOMEvent * aEvent=0x03973f28, nsIDOMEventListener * aListener=0x038c0800, unsigned int (nsIDOMEvent *)* aMethod=0x016308c0, const nsID & aIID={...}, int * aHasInterface=0x0012c800) Line 127 + 0xb C++ gklayout.dll!nsEventListenerManager::HandleEvent(nsIPresContext * aPresContext=0x036425a8, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x0012c9c0, nsIDOMEventTarget * aCurrentTarget=0x03842438, unsigned int aFlags=7, nsEventStatus * aEventStatus=0x0012cd20) Line 1520 + 0x23 C++ gklayout.dll!nsGenericElement::HandleDOMEvent(nsIPresContext * aPresContext=0x036425a8, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x0012c9c0, unsigned int aFlags=7, nsEventStatus * aEventStatus=0x0012cd20) Line 1960 C++ gklayout.dll!nsHTMLInputElement::HandleDOMEvent(nsIPresContext * aPresContext=0x036425a8, nsEvent * aEvent=0x0012cd24, nsIDOMEvent * * aDOMEvent=0x00000000, unsigned int aFlags=1, nsEventStatus * aEventStatus=0x0012cd20) Line 1396 + 0x1f C++ gklayout.dll!nsEventStateManager::SendFocusBlur(nsIPresContext * aPresContext=0x036425a8, nsIContent * aContent=0x036fac08, int aEnsureWindowHasFocus=1) Line 4271 C++ gklayout.dll!nsEventStateManager::SetContentState(nsIContent * aContent=0x036fac08, int aState=2) Line 3934 C++ gklayout.dll!nsHTMLInputElement::SetFocus(nsIPresContext * aPresContext=0x036425a8) Line 1110 C++ gklayout.dll!nsEventStateManager::PreHandleEvent(nsIPresContext * aPresContext=0x026e3118, nsEvent * aEvent=0x0012d5dc, nsIFrame * aTargetFrame=0x0315a6bc, nsEventStatus * aStatus=0x0012d410, nsIView * aView=0x026ee658) Line 751 C++ gklayout.dll!PresShell::HandleEventInternal(nsEvent * aEvent=0x0012d5dc, nsIView * aView=0x026ee658, unsigned int aFlags=1, nsEventStatus * aStatus=0x0012d410) Line 6030 + 0x34 C++ gklayout.dll!PresShell::HandleEvent(nsIView * aView=0x026ee658, nsGUIEvent * aEvent=0x0012d5dc, nsEventStatus * aEventStatus=0x0012d410, int aForceHandle=1, int & aHandled=1) Line 5929 + 0x19 C++ gklayout.dll!nsViewManager::HandleEvent(nsView * aView=0x026ee658, nsGUIEvent * aEvent=0x0012d5dc, int aCaptured=0) Line 2239 C++ gklayout.dll!nsViewManager::DispatchEvent(nsGUIEvent * aEvent=0x0012d5dc, nsEventStatus * aStatus=0x0012d538) Line 2025 + 0x14 C++ gklayout.dll!HandleEvent(nsGUIEvent * aEvent=0x0012d5dc) Line 79 C++ gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012d5dc, nsEventStatus & aStatus=nsEventStatus_eIgnore) Line 1067 + 0xa C++ gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012d5dc) Line 1088 C++ gkwidget.dll!nsWindow::DispatchFocus(unsigned int aEventType=107, int isMozWindowTakingFocus=1) Line 5453 + 0xf C++ gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=7, unsigned int wParam=1180920, long lParam=0, long * aRetValue=0x0012da3c) Line 4198 + 0x17 C++ gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x004104d6, unsigned int msg=7, unsigned int wParam=1180920, long lParam=0) Line 1349 + 0x1b C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d47998() gkwidget.dll!nsWindow::SetFocus(int aRaise=1) Line 2220 C++ gklayout.dll!GlobalWindowImpl::Focus() Line 2523 + 0x19 C++ appshell.dll!nsWebShellWindow::HandleEvent(nsGUIEvent * aEvent=0x0012dd9c) Line 610 C++ gkwidget.dll!nsWindow::DispatchEvent(nsGUIEvent * event=0x0012dd9c, nsEventStatus & aStatus=nsEventStatus_eIgnore) Line 1067 + 0xa C++ gkwidget.dll!nsWindow::DispatchWindowEvent(nsGUIEvent * event=0x0012dd9c) Line 1088 C++ gkwidget.dll!nsWindow::DispatchFocus(unsigned int aEventType=105, int isMozWindowTakingFocus=1) Line 5453 + 0xf C++ gkwidget.dll!nsWindow::ProcessMessage(unsigned int msg=7, unsigned int wParam=1378012, long lParam=0, long * aRetValue=0x0012e1fc) Line 4194 + 0x17 C++ gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x001204f8, unsigned int msg=7, unsigned int wParam=1378012, long lParam=0) Line 1349 + 0x1b C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d4582b() user32.dll!77d49bf3() user32.dll!77d458ce() user32.dll!77d45885() gkwidget.dll!nsWindow::DefaultWindowProc(HWND__ * hWnd=0x001204f8, unsigned int msg=6, unsigned int wParam=1, long lParam=2754310) Line 1375 C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d45b2c() user32.dll!77d45b4b() gkwidget.dll!nsWindow::WindowProc(HWND__ * hWnd=0x001204f8, unsigned int msg=6, unsigned int wParam=1, long lParam=2754310) Line 1356 + 0x1f C++ user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d444f5() user32.dll!77d44525() ntdll.dll!77f75da3() user32.dll!77d478fd() gkwidget.dll!nsWindow::PlaceBehind(nsTopLevelWidgetZPlacement aPlacement=eZPlacementTop, nsIWidget * aWidget=0x00000000, int aActivate=1) Line 1817 C++ appshell.dll!nsXULWindow::Destroy() Line 483 C++ appshell.dll!nsWebShellWindow::Destroy() Line 1663 + 0x9 C++ appshell.dll!nsChromeTreeOwner::Destroy() Line 330 C++ gklayout.dll!GlobalWindowImpl::ReallyCloseWindow() Line 3691 C++ gklayout.dll!GlobalWindowImpl::Close() Line 3675 + 0x10 C++ xpcom.dll!XPTC_InvokeByIndex(nsISupports * that=0x033d3a5c, unsigned int methodIndex=80, unsigned int paramCount=0, nsXPTCVariant * params=0x0012ea40) Line 102 C++ xpc3250.dll!XPCWrappedNative::CallMethod(XPCCallContext & ccx={...}, XPCWrappedNative::CallMode mode=CALL_METHOD) Line 2027 + 0x1e C++ xpc3250.dll!XPC_WN_CallMethod(JSContext * cx=0x02566458, JSObject * obj=0x034a5e18, unsigned int argc=0, long * argv=0x0396ef2c, long * vp=0x0012ed14) Line 1287 + 0xe C++ js3250.dll!js_Invoke(JSContext * cx=0x02566458, unsigned int argc=0, unsigned int flags=0) Line 941 + 0x20 C js3250.dll!js_Interpret(JSContext * cx=0x02566458, long * result=0x0012f68c) Line 2967 + 0xf C js3250.dll!js_Invoke(JSContext * cx=0x02566458, unsigned int argc=4, unsigned int flags=2) Line 958 + 0xd C xpc3250.dll!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS * wrapper=0x02f02b50, unsigned short methodIndex=3, const nsXPTMethodInfo * info=0x03408eb0, nsXPTCMiniVariant * nativeParams=0x0012f9a8) Line 1336 + 0x14 C++ xpc3250.dll!nsXPCWrappedJS::CallMethod(unsigned short methodIndex=3, const nsXPTMethodInfo * info=0x03408eb0, nsXPTCMiniVariant * params=0x0012f9a8) Line 450 C++ xpcom.dll!PrepareAndDispatch(nsXPTCStubBase * self=0x02f02b50, unsigned int methodIndex=3, unsigned int * args=0x0012fa70, unsigned int * stackBytesToPop=0x0012fa60) Line 117 + 0x1c C++ xpcom.dll!SharedStub() Line 147 C++ embedcomponents.dll!nsPrintProgress::OnStateChange(nsIWebProgress * aWebProgress=0x00000000, nsIRequest * aRequest=0x00000000, unsigned int aStateFlags=131088, unsigned int aStatus=0) Line 257 C++ embedcomponents.dll!nsPrintingPromptService::OnStateChange(nsIWebProgress * aWebProgress=0x00000000, nsIRequest * aRequest=0x00000000, unsigned int aStateFlags=131088, unsigned int aStatus=0) Line 340 C++ gklayout.dll!nsPrintData::DoOnProgressChange(nsVoidArray & aListeners={...}, int aProgess=100, int aMaxProgress=100, int aDoStartStop=1, int aFlag=131088) Line 194 C++ gklayout.dll!nsPrintData::OnEndPrinting() Line 172 + 0x17 C++ gklayout.dll!nsPrintData::~nsPrintData() Line 124 C++ gklayout.dll!nsPrintData::`scalar deleting destructor'() + 0xf C++ gklayout.dll!nsPrintEngine::Destroy() Line 292 + 0x1f C++ gklayout.dll!DocumentViewerImpl::OnDonePrinting() Line 3843 C++ gklayout.dll!HandlePLEvent(PLEvent * aEvent=0x02f05970) Line 4579 C++ xpcom.dll!PL_HandleEvent(PLEvent * self=0x02f05970) Line 673 + 0xa C xpcom.dll!PL_ProcessPendingEvents(PLEventQueue * self=0x00a28ea0) Line 608 + 0x9 C xpcom.dll!_md_EventReceiverProc(HWND__ * hwnd=0x0051053a, unsigned int uMsg=49603, unsigned int wParam=0, long lParam=10653344) Line 1414 + 0x9 C user32.dll!77d43a50() user32.dll!77d43b1f() user32.dll!77d43d79() user32.dll!77d43fd4() user32.dll!77d43ddf() gkwidget.dll!nsAppShell::Run() Line 135 C++ appshell.dll!nsAppShellService::Run() Line 524 C++ mozilla.exe!main1(int argc=2, char * * argv=0x002a57b8, nsISupports * nativeApp=0x009f5f90) Line 1303 + 0x20 C++ mozilla.exe!main(int argc=2, char * * argv=0x002a57b8) Line 1780 + 0x25 C++ mozilla.exe!mainCRTStartup() Line 398 + 0x11 C kernel32.dll!77e814c7()
Status: NEW → ASSIGNED
Comment on attachment 149477 [details] [diff] [review] wall paper OK. This patch means for printing, we'll return a null returnView which causes an error exit in the caller before we do any more damage. The problem with my patch is that it doesn't cause an error exit so we keep bulldozing on and hit another crasher. We really didn't want to be here in the first place so this fix is better.
Attachment #149477 - Flags: superreview?(roc)
Attachment #149477 - Flags: superreview+
Attachment #149477 - Flags: review?(bryner)
Attachment #149477 - Flags: review+
thanks roc. I'll land the wall paper on trunk and branch (crashing is never good) and then start a new bug on the assert with your comments.
Flags: blocking1.8a2+
Flags: blocking1.7-
Flags: blocking1.7+
I've landed the fix on the branch, and logged bug #245055 to track the real issue.
I've landed the bullet proofing on the trunk too, since crashing is never good. thanks to roc for the help and to ere for the excellent bug report.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Keywords: fixed1.7
fixed on aviary branch as well
Whiteboard: TB44076Y → TB44076Y, fixed-aviary1.0
Whiteboard: TB44076Y, fixed-aviary1.0
Crash Signature: [@ nsCaret::GetViewForRendering]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: