Closed Bug 104804 Opened 24 years ago Closed 24 years ago

browser crashes when closing tab while it is transferring data

Categories

(Core :: Layout, defect)

x86
Windows 2000
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME
mozilla1.0.1

People

(Reporter: axlrey, Assigned: hyatt)

References

Details

(Keywords: crash)

Attachments

(1 file)

From Bugzilla Helper: User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.5) Gecko/20011011 BuildID: 2001101117 Closing tab when it goes from "connecting..." to "transferring data..." causes browser to crash. Reproducible: Always Steps to Reproduce: 1.Load any page in the first tab and wait until it is fully loaded. 2.Open new tab. start to load any page ( I tried many ) 3.When status will go to "transferring data from ..." - try to close the tab. Actual Results: Browser crashed Talkback crash IDs : TB36711088Z TB36710082K TB36710020K
WFM on Linux (2001101508)
WFM on Windows 95 build 2001101503
bug 102900? Stack Trace nsFontMetricsWin::RealizeFont [d:\builds\seamonkey\mozilla\gfx\src\windows\nsFontMetricsWin.cpp, line 3054] nsFontMetricsWin::Init [d:\builds\seamonkey\mozilla\gfx\src\windows\nsFontMetricsWin.cpp, line 444] nsFontCache::GetMetricsFor [d:\builds\seamonkey\mozilla\gfx\src\nsDeviceContext.cpp, line 570] DeviceContextImpl::GetMetricsFor [d:\builds\seamonkey\mozilla\gfx\src\nsDeviceContext.cpp, line 248] nsRenderingContextWin::SetFont [d:\builds\seamonkey\mozilla\gfx\src\windows\nsRenderingContextWin.cpp, line 976] nsLineLayout::VerticalAlignFrames [d:\builds\seamonkey\mozilla\layout\html\base\src\nsLineLayout.cpp, line 2130] nsLineLayout::VerticalAlignLine [d:\builds\seamonkey\mozilla\layout\html\base\src\nsLineLayout.cpp, line 1859] nsBlockFrame::PlaceLine [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 3804] nsBlockFrame::DoReflowInlineFrames [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 3448] nsBlockFrame::DoReflowInlineFramesAuto [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 3299] nsBlockFrame::ReflowInlineFrames [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 3244] nsBlockFrame::ReflowLine [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 2390] nsBlockFrame::ReflowDirtyLines [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 2060] nsBlockFrame::Reflow [d:\builds\seamonkey\mozilla\layout\html\base\src\nsBlockFrame.cpp, line 815] nsContainerFrame::ReflowChild [d:\builds\seamonkey\mozilla\layout\html\base\src\nsContainerFrame.cpp, line 738] CanvasFrame::Reflow [d:\builds\seamonkey\mozilla\layout\html\base\src\nsHTMLFrame.cpp, line 584] nsBoxToBlockAdaptor::Reflow [d:\builds\seamonkey\mozilla\layout\xul\base\src\nsBoxToBlockAdaptor.cpp, line 885]
Assignee: asa → attinasi
Status: UNCONFIRMED → NEW
Component: Browser-General → Layout
Ever confirmed: true
QA Contact: doronr → petersen
More font fallout?
Assignee: attinasi → rbs
WFM on Win2K. But a similar problem has been reported, I am trying to reproduce this problem to no avail so far. I will welcome more data. Reporter, since you are reproducing this quite realiably at your end, see the instructions in bug 103473 for a special build that will provide the helpful data that I need.
Thanks for the log. The last bits show that the device context that is passed to the font sub-system is NULL. This might be indicative of the world being teared down in unexpected ways for the font sub-system. Seems that the layout should have stopped before destroying things under the feets of consumers. Cc:ing other folks who might be aware of what is happening higher up. Reading your log helped me to see how to reproduce. I am going to document in my next post. 00134.824: nsFontMetricsWin::RealizeFont...... 00134.824: Start> FindFont aDC=0 aChar=0x0061:a 00134.824: FindUserDefinedFont 00134.824: FindLocalFont 00134.824: FindGenericFont 00134.834: LoadFont aDC=0 name=Arial 00134.944: LoadFont... failed fontCount=9 handleCount=9 00134.944: FindGlobalFont 00134.944: FindSubstituteFont 00134.944: End> FindFont aDC=0 aChar=0x0061:a font=0 name=(null)
Steps to Reproduce: 1. clear your disk cache & memory cache 2. disable cache (in Edit -> Prefs -> Advanced -> Cache -> (X) Every time I view the page, or in Edit -> Prefs -> Advanced -> Debug -> Networking -- if your network is too fast...) 3. Load a page in the first tab and wait until it is fully loaded. e.g., www.mozill.org 2. Open new tab, start to load a page, e.g. www.news.com (or preferably a page with style links that causes layout to be slow). 3. When the status goes to "transferring data from ..." - quickly right-click on the tab and select "Close tab" to try to close it. If the crash doesn't happen, click "Reload" and just re-try this step #3 again. (note: when the crash happens, the stack trace may end somewhere else).
-> hyatt
Assignee: rbs → hyatt
Keywords: crash
crash point =========== NS_IMETHODIMP nsXULWindow::GetPrimaryContentShell(nsIDocShellTreeItem** aDocShellTreeItem) { NS_ENSURE_ARG_POINTER(aDocShellTreeItem); *aDocShellTreeItem = nsnull; PRInt32 count = mContentShells.Count(); for(PRInt32 i = 0; i < count; i++) { nsContentShellInfo* shellInfo = (nsContentShellInfo*)mContentShells.ElementAt(i); if(shellInfo->primary) { *aDocShellTreeItem = shellInfo->child; NS_ADDREF(*aDocShellTreeItem); <===== |shellInfo->child| was NULL return NS_OK; } } return NS_ERROR_FAILURE; } stack trace =========== nsXULWindow::GetPrimaryContentShell(nsXULWindow * const 0x024865b0, nsIDocShellTreeItem * * 0x00127bb4) line 202 + 10 bytes nsChromeTreeOwner::GetPrimaryContentShell(nsChromeTreeOwner * const 0x02487590, nsIDocShellTreeItem * * 0x00127bb4) line 176 GlobalWindowImpl::GetContent(GlobalWindowImpl * const 0x02487ec4, nsIDOMWindow * * 0x00127d44) line 854 + 47 bytes XPTC_InvokeByIndex(nsISupports * 0x02487ec4, unsigned int 23, unsigned int 1, nsXPTCVariant * 0x00127d44) line 154 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_GETTER) line 1951 + 42 bytes XPCWrappedNative::GetAttribute(XPCCallContext & {...}) line 1790 + 14 bytes XPC_WN_GetterSetter(JSContext * 0x02487b30, JSObject * 0x00d0f030, unsigned int 0, long * 0x03e47168, long * 0x00127f90) line 1298 + 12 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 0, unsigned int 2) line 809 + 23 bytes js_InternalInvoke(JSContext * 0x02487b30, JSObject * 0x00d0f030, long 43876360, unsigned int 0, unsigned int 0, long * 0x00000000, long * 0x00128cec) line 901 + 20 bytes js_GetProperty(JSContext * 0x02487b30, JSObject * 0x00d0f030, long 38328768, long * 0x00128cec) line 2433 + 45 bytes js_Interpret(JSContext * 0x02487b30, long * 0x00128ea4) line 2564 + 1998 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 0, unsigned int 2) line 826 + 13 bytes js_InternalInvoke(JSContext * 0x02487b30, JSObject * 0x00d0f030, long 44161008, unsigned int 0, unsigned int 0, long * 0x00000000, long * 0x00129bb8) line 901 + 20 bytes js_GetProperty(JSContext * 0x02487b30, JSObject * 0x00d0f030, long 38328912, long * 0x00129bb8) line 2433 + 45 bytes js_Interpret(JSContext * 0x02487b30, long * 0x00129d70) line 2564 + 1998 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 1, unsigned int 2) line 826 + 13 bytes nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJSClass * const 0x031575c0, nsXPCWrappedJS * 0x03305120, unsigned short 3, const nsXPTMethodInfo * 0x00dc6e40, nsXPTCMiniVariant * 0x0012a2c0) line 1022 + 21 bytes nsXPCWrappedJS::CallMethod(nsXPCWrappedJS * const 0x03305120, unsigned short 3, const nsXPTMethodInfo * 0x00dc6e40, nsXPTCMiniVariant * 0x0012a2c0) line 430 PrepareAndDispatch(nsXPTCStubBase * 0x03305120, unsigned int 3, unsigned int * 0x0012a370, unsigned int * 0x0012a360) line 115 + 31 bytes SharedStub() line 139 nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x03305030, nsIDOMEvent * 0x0982f044, nsIDOMEventTarget * 0x031d8b08, unsigned int 1, unsigned int 4) line 1213 + 20 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x031d8aa0, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, nsIDOMEventTarget * 0x031d8b08, unsigned int 4, nsEventStatus * 0x0012bfc4) line 1886 + 36 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x031d8b00, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3719 nsXULElement::HandleDOMEvent(nsXULElement * const 0x031d8670, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3700 nsXULElement::HandleDOMEvent(nsXULElement * const 0x031d8510, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3700 nsXULElement::HandleDOMEvent(nsXULElement * const 0x036878b0, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3700 nsXULElement::HandleDOMEvent(nsXULElement * const 0x034b27c0, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3700 nsXULElement::HandleDOMEvent(nsXULElement * const 0x0ef3fe10, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 3700 nsXULElement::HandleChromeEvent(nsXULElement * const 0x0ef3fe20, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 4, nsEventStatus * 0x0012bfc4) line 5112 + 39 bytes GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x0ef57d00, nsIPresContext * 0x04715c70, nsEvent * 0x0012bf9c, nsIDOMEvent * * 0x0012bf54, unsigned int 1, nsEventStatus * 0x0012bfc4) line 620 DocumentViewerImpl::LoadComplete(DocumentViewerImpl * const 0x046eaed0, unsigned int 0) line 1103 + 47 bytes nsDocShell::EndPageLoad(nsIWebProgress * 0x0ef3b6b4, nsIChannel * 0x0434e4a0, unsigned int 0) line 3747 nsWebShell::EndPageLoad(nsIWebProgress * 0x0ef3b6b4, nsIChannel * 0x0434e4a0, unsigned int 0) line 918 nsDocShell::OnStateChange(nsDocShell * const 0x0ef3c2f4, nsIWebProgress * 0x0ef3b6b4, nsIRequest * 0x0434e4a0, int 131088, unsigned int 0) line 3668 nsDocLoaderImpl::FireOnStateChange(nsIWebProgress * 0x0ef3b6b4, nsIRequest * 0x0434e4a0, int 131088, unsigned int 0) line 1110 nsDocLoaderImpl::doStopDocumentLoad(nsIRequest * 0x0434e4a0, unsigned int 0) line 749 nsDocLoaderImpl::DocLoaderIsEmpty() line 647 nsDocLoaderImpl::DocLoaderIsEmpty() line 650 nsDocLoaderImpl::OnStopRequest(nsDocLoaderImpl * const 0x0471eba4, nsIRequest * 0x055f59a0, nsISupports * 0x00000000, unsigned int 2152398850) line 578 nsLoadGroup::RemoveRequest(nsLoadGroup * const 0x0471eb30, nsIRequest * 0x055f59a0, nsISupports * 0x00000000, unsigned int 2152398850) line 532 + 44 bytes nsLoadGroup::Cancel(nsLoadGroup * const 0x0471eb30, unsigned int 2152398850) line 255 nsDocLoaderImpl::Stop(nsDocLoaderImpl * const 0x0471eba0) line 293 + 31 bytes nsDocLoaderImpl::Stop(nsDocLoaderImpl * const 0x0ef3b6a0) line 289 nsURILoader::Stop(nsURILoader * const 0x0245dc20, nsISupports * 0x0ef3b6b8) line 560 + 23 bytes nsDocShell::Stop(nsDocShell * const 0x0ef3c2d0, unsigned int 3) line 2306 nsDocShell::Destroy(nsDocShell * const 0x0ef3c2d4) line 2441 nsWebShell::Destroy(nsWebShell * const 0x0ef3c2d4) line 1412 nsHTMLFrameInnerFrame::~nsHTMLFrameInnerFrame() line 696 nsHTMLFrameInnerFrame::`scalar deleting destructor'(unsigned int 1) + 15 bytes nsFrame::Destroy(nsFrame * const 0x03e65864, nsIPresContext * 0x02e7f640) line 468 + 34 bytes nsFrameList::DestroyFrames(nsIPresContext * 0x02e7f640) line 131 nsContainerFrame::Destroy(nsContainerFrame * const 0x0295db38, nsIPresContext * 0x02e7f640) line 136 nsFrameList::DestroyFrame(nsIPresContext * 0x02e7f640, nsIFrame * 0x0295db38) line 217 nsBoxFrame::RemoveFrame(nsBoxFrame * const 0x029d0768, nsIPresContext * 0x02e7f640, nsIPresShell & {...}, nsIAtom * 0x00000000 {???}, nsIFrame * 0x0295db38) line 1202 FrameManager::RemoveFrame(FrameManager * const 0x02e583b0, nsIPresContext * 0x02e7f640, nsIPresShell & {...}, nsIFrame * 0x029d0768, nsIAtom * 0x00000000 {???}, nsIFrame * 0x0295db38) line 859 nsCSSFrameConstructor::ContentRemoved(nsCSSFrameConstructor * const 0x02e5bbf0, nsIPresContext * 0x02e7f640, nsIContent * 0x034b27c0, nsIContent * 0x0ef3fe10, int 1) line 9231 + 58 bytes StyleSetImpl::ContentRemoved(StyleSetImpl * const 0x02e5cd60, nsIPresContext * 0x02e7f640, nsIContent * 0x034b27c0, nsIContent * 0x0ef3fe10, int 1) line 1222 PresShell::ContentRemoved(PresShell * const 0x02e59d38, nsIDocument * 0x0247c0b0, nsIContent * 0x034b27c0, nsIContent * 0x0ef3fe10, int 1) line 5100 + 53 bytes nsXULDocument::ContentRemoved(nsXULDocument * const 0x0247c0b0, nsIContent * 0x034b27c0, nsIContent * 0x0ef3fe10, int 1) line 1893 nsXULElement::RemoveChildAt(nsXULElement * const 0x034b27c0, int 1, int 1) line 2804 nsXULElement::RemoveChild(nsXULElement * const 0x034b27c4, nsIDOMNode * 0x0ef3fe14, nsIDOMNode * * 0x0012d600) line 1221 + 22 bytes XPTC_InvokeByIndex(nsISupports * 0x034b27c4, unsigned int 17, unsigned int 2, nsXPTCVariant * 0x0012d5f0) line 154 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_METHOD) line 1951 + 42 bytes XPC_WN_CallMethod(JSContext * 0x02487b30, JSObject * 0x02a1bbf8, unsigned int 1, long * 0x03e47100, long * 0x0012d828) line 1266 + 14 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 1, unsigned int 0) line 809 + 23 bytes js_Interpret(JSContext * 0x02487b30, long * 0x0012e5cc) line 2732 + 15 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 1, unsigned int 2) line 826 + 13 bytes js_InternalInvoke(JSContext * 0x02487b30, JSObject * 0x02aa7fa0, long 44729720, unsigned int 0, unsigned int 1, long * 0x0012e7ac, long * 0x0012e6f4) line 901 + 20 bytes JS_CallFunctionValue(JSContext * 0x02487b30, JSObject * 0x02aa7fa0, long 44729720, unsigned int 1, long * 0x0012e7ac, long * 0x0012e6f4) line 3387 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x02487ce0, void * 0x02aa7fa0, void * 0x02aa8578, unsigned int 1, void * 0x0012e7ac, int * 0x0012e7a8, int 0) line 977 + 33 bytes nsJSEventListener::HandleEvent(nsJSEventListener * const 0x034b2d80, nsIDOMEvent * 0x0980a564) line 155 + 74 bytes nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x034b14b0, nsIDOMEvent * 0x0980a564, nsIDOMEventTarget * 0x034ae948, unsigned int 8, unsigned int 7) line 1213 + 20 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x034b2dd0, nsIPresContext * 0x02e7f640, nsEvent * 0x0012f2d4, nsIDOMEvent * * 0x0012f180, nsIDOMEventTarget * 0x034ae948, unsigned int 7, nsEventStatus * 0x0012f320) line 2203 + 36 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x034ae940, nsIPresContext * 0x02e7f640, nsEvent * 0x0012f2d4, nsIDOMEvent * * 0x0012f180, unsigned int 1, nsEventStatus * 0x0012f320) line 3719 PresShell::HandleDOMEventWithTarget(PresShell * const 0x02e59d30, nsIContent * 0x034ae940, nsEvent * 0x0012f2d4, nsEventStatus * 0x0012f320) line 5762 + 39 bytes nsMenuFrame::Execute() line 1557 nsMenuFrame::HandleEvent(nsMenuFrame * const 0x03f52e30, nsIPresContext * 0x02e7f640, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c) line 474 PresShell::HandleEventInternal(nsEvent * 0x0012f778, nsIView * 0x08d09390, unsigned int 1, nsEventStatus * 0x0012f66c) line 5730 + 41 bytes PresShell::HandleEvent(PresShell * const 0x02e59d34, nsIView * 0x08d09390, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c, int 0, int & 1) line 5640 + 25 bytes nsView::HandleEvent(nsView * const 0x08d09390, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 392 nsView::HandleEvent(nsView * const 0x08d0be60, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 365 nsView::HandleEvent(nsView * const 0x08d05270, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 365 nsView::HandleEvent(nsView * const 0x02e5ce90, nsGUIEvent * 0x0012f778, unsigned int 28, nsEventStatus * 0x0012f66c, int 1, int & 1) line 365 nsViewManager::DispatchEvent(nsViewManager * const 0x02e58ef0, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c) line 2094 HandleEvent(nsGUIEvent * 0x0012f778) line 83 nsWindow::DispatchEvent(nsWindow * const 0x08d0e444, nsGUIEvent * 0x0012f778, nsEventStatus & nsEventStatus_eIgnore) line 747 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f778) line 768 nsWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 4318 + 21 bytes ChildWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 4570 nsWindow::ProcessMessage(unsigned int 514, unsigned int 0, long 2031665, long * 0x0012fb94) line 3253 + 24 bytes nsWindow::WindowProc(HWND__ * 0x0004043e, unsigned int 514, unsigned int 0, long 2031665) line 1015 + 27 bytes USER32! 77e148dc() USER32! 77e14aa7() USER32! 77e266fd() nsAppShellService::Run(nsAppShellService * const 0x012e49b0) line 457 main1(int 1, char * * 0x00484300, nsISupports * 0x00000000) line 1293 + 32 bytes main(int 1, char * * 0x00484300) line 1621 + 37 bytes mainCRTStartup() line 338 + 17 bytes KERNEL32! 77e992a6()
The above is just one possible stack trace. I get other ones, for example I also get the following one which reminds other reported bugs (e.g., bug 103997): nsWindow::Create(nsWindow * const 0x04806ee4, nsIWidget * 0x047cfb74, const nsRect & {...}, nsEventStatus (nsGUIEvent *)* 0x02e04d90 HandleEvent(nsGUIEvent *), nsIDeviceContext * 0x0490ed70, nsIAppShell * 0x00000000, nsIToolkit * 0x00000000, nsWidgetInitData * 0x0012c4fc) line 1217 nsView::CreateWidget(nsView * const 0x048022d0, const nsID & {...}, nsWidgetInitData * 0x0012c4fc, void * 0x00000000, int 1) line 973 nsScrollPortView::CreateScrollControls(nsScrollPortView * const 0x04802330, void * 0x00000000) line 177 nsScrollBoxFrame::CreateScrollingView(nsIPresContext * 0x047ce350) line 310 nsScrollBoxFrame::Init(nsScrollBoxFrame * const 0x03e0297c, nsIPresContext * 0x047ce350, nsIContent * 0x047bb930, nsIFrame * 0x03e02714, nsIStyleContext * 0x03e0e164, nsIFrame * 0x00000000) line 116 nsCSSFrameConstructor::InitAndRestoreFrame(nsIPresContext * 0x047ce350, nsFrameConstructorState & {...}, nsIContent * 0x047bb930, nsIFrame * 0x03e02714, nsIStyleContext * 0x03e0e164, nsIFrame * 0x00000000, nsIFrame * 0x03e0297c) line 6462 + 32 bytes nsCSSFrameConstructor::BeginBuildingScrollFrame(nsIPresShell * 0x047c9a90, nsIPresContext * 0x047ce350, nsFrameConstructorState & {...}, nsIContent * 0x047bb930, nsIStyleContext * 0x03e0267c, nsIFrame * 0x03e025c0, nsIAtom * 0x01374a90 {":canvas"}, nsIDocument * 0x047bf9b0, int 1, nsIFrame * & 0x03e02714, nsCOMPtr<nsIStyleContext> & {...}, nsIFrame * & 0x00000000, nsIFrame * ...) l nsCSSFrameConstructor::ConstructRootFrame(nsCSSFrameConstructor * const 0x047c9e60, nsIPresShell * 0x047c9a90, nsIPresContext * 0x047ce350, nsIContent * 0x047bb930, nsIFrame * & 0x00000000) line 3647 StyleSetImpl::ConstructRootFrame(StyleSetImpl * const 0x047cf230, nsIPresContext * 0x047ce350, nsIContent * 0x047bb930, nsIFrame * & 0x00000000) line 1179 + 39 bytes PresShell::InitialReflow(PresShell * const 0x047c9a90, int 12690, int 7665) line 2620 HTMLContentSink::StartLayout() line 3907 HTMLContentSink::DidBuildModel(HTMLContentSink * const 0x047ba2c0, int 0) line 2747 CNavDTD::DidBuildModel(CNavDTD * const 0x047cbad0, unsigned int 2152596471, int 1, nsIParser * 0x047ba700, nsIContentSink * 0x047ba2c0) line 666 + 14 bytes nsParser::DidBuildModel(unsigned int 2152596471) line 1418 + 60 bytes nsParser::Terminate() line 1494 nsHTMLDocument::StopDocumentLoad(nsHTMLDocument * const 0x047bf9b0) line 879 DocumentViewerImpl::Stop(DocumentViewerImpl * const 0x047bac00) line 1238 nsDocShell::Stop(nsDocShell * const 0x04888e90, unsigned int 3) line 2296 nsDocShell::Destroy(nsDocShell * const 0x04888e94) line 2441 nsWebShell::Destroy(nsWebShell * const 0x04888e94) line 1412 nsHTMLFrameInnerFrame::~nsHTMLFrameInnerFrame() line 696 nsHTMLFrameInnerFrame::`scalar deleting destructor'(unsigned int 1) + 15 bytes nsFrame::Destroy(nsFrame * const 0x03e3d878, nsIPresContext * 0x02e59d40) line 468 + 34 bytes nsFrameList::DestroyFrames(nsIPresContext * 0x02e59d40) line 131 nsContainerFrame::Destroy(nsContainerFrame * const 0x03e3d838, nsIPresContext * 0x02e59d40) line 136 nsFrameList::DestroyFrame(nsIPresContext * 0x02e59d40, nsIFrame * 0x03e3d838) line 217 nsBoxFrame::RemoveFrame(nsBoxFrame * const 0x02a31e60, nsIPresContext * 0x02e59d40, nsIPresShell & {...}, nsIAtom * 0x00000000 {???}, nsIFrame * 0x03e3d838) line 1202 FrameManager::RemoveFrame(FrameManager * const 0x02e6eeb0, nsIPresContext * 0x02e59d40, nsIPresShell & {...}, nsIFrame * 0x02a31e60, nsIAtom * 0x00000000 {???}, nsIFrame * 0x03e3d838) line 859 nsCSSFrameConstructor::ContentRemoved(nsCSSFrameConstructor * const 0x02e58530, nsIPresContext * 0x02e59d40, nsIContent * 0x0348f5a0, nsIContent * 0x048603a0, int 1) line 9231 + 58 bytes StyleSetImpl::ContentRemoved(StyleSetImpl * const 0x02e58600, nsIPresContext * 0x02e59d40, nsIContent * 0x0348f5a0, nsIContent * 0x048603a0, int 1) line 1222 PresShell::ContentRemoved(PresShell * const 0x02e58168, nsIDocument * 0x02519a30, nsIContent * 0x0348f5a0, nsIContent * 0x048603a0, int 1) line 5100 + 53 bytes nsXULDocument::ContentRemoved(nsXULDocument * const 0x02519a30, nsIContent * 0x0348f5a0, nsIContent * 0x048603a0, int 1) line 1893 nsXULElement::RemoveChildAt(nsXULElement * const 0x0348f5a0, int 1, int 1) line 2804 nsXULElement::RemoveChild(nsXULElement * const 0x0348f5a4, nsIDOMNode * 0x048603a4, nsIDOMNode * * 0x0012d600) line 1221 + 22 bytes XPTC_InvokeByIndex(nsISupports * 0x0348f5a4, unsigned int 17, unsigned int 2, nsXPTCVariant * 0x0012d5f0) line 154 XPCWrappedNative::CallMethod(XPCCallContext & {...}, XPCWrappedNative::CallMode CALL_METHOD) line 1951 + 42 bytes XPC_WN_CallMethod(JSContext * 0x02487b30, JSObject * 0x02a243f8, unsigned int 1, long * 0x03e00508, long * 0x0012d828) line 1266 + 14 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 1, unsigned int 0) line 809 + 23 bytes js_Interpret(JSContext * 0x02487b30, long * 0x0012e5cc) line 2732 + 15 bytes js_Invoke(JSContext * 0x02487b30, unsigned int 1, unsigned int 2) line 826 + 13 bytes js_InternalInvoke(JSContext * 0x02487b30, JSObject * 0x02a6b480, long 45266968, unsigned int 0, unsigned int 1, long * 0x0012e7ac, long * 0x0012e6f4) line 901 + 20 bytes JS_CallFunctionValue(JSContext * 0x02487b30, JSObject * 0x02a6b480, long 45266968, unsigned int 1, long * 0x0012e7ac, long * 0x0012e6f4) line 3387 + 31 bytes nsJSContext::CallEventHandler(nsJSContext * const 0x02487ce0, void * 0x02a6b480, void * 0x02b2b818, unsigned int 1, void * 0x0012e7ac, int * 0x0012e7a8, int 0) line 977 + 33 bytes nsJSEventListener::HandleEvent(nsJSEventListener * const 0x0347ad20, nsIDOMEvent * 0x047afdb4) line 155 + 74 bytes nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x0348ee10, nsIDOMEvent * 0x047afdb4, nsIDOMEventTarget * 0x034ace78, unsigned int 8, unsigned int 7) line 1213 + 20 bytes nsEventListenerManager::HandleEvent(nsEventListenerManager * const 0x034c9b40, nsIPresContext * 0x02e59d40, nsEvent * 0x0012f2d4, nsIDOMEvent * * 0x0012f180, nsIDOMEventTarget * 0x034ace78, unsigned int 7, nsEventStatus * 0x0012f320) line 2203 + 36 bytes nsXULElement::HandleDOMEvent(nsXULElement * const 0x034ace70, nsIPresContext * 0x02e59d40, nsEvent * 0x0012f2d4, nsIDOMEvent * * 0x0012f180, unsigned int 1, nsEventStatus * 0x0012f320) line 3719 PresShell::HandleDOMEventWithTarget(PresShell * const 0x02e58160, nsIContent * 0x034ace70, nsEvent * 0x0012f2d4, nsEventStatus * 0x0012f320) line 5762 + 39 bytes nsMenuFrame::Execute() line 1557 nsMenuFrame::HandleEvent(nsMenuFrame * const 0x03d5fc28, nsIPresContext * 0x02e59d40, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c) line 474 PresShell::HandleEventInternal(nsEvent * 0x0012f778, nsIView * 0x047a52f0, unsigned int 1, nsEventStatus * 0x0012f66c) line 5730 + 41 bytes PresShell::HandleEvent(PresShell * const 0x02e58164, nsIView * 0x047a52f0, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c, int 0, int & 1) line 5640 + 25 bytes nsView::HandleEvent(nsView * const 0x047a52f0, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 392 nsView::HandleEvent(nsView * const 0x047a1880, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 365 nsView::HandleEvent(nsView * const 0x047a6880, nsGUIEvent * 0x0012f778, unsigned int 8, nsEventStatus * 0x0012f66c, int 0, int & 1) line 365 nsView::HandleEvent(nsView * const 0x02e5ae10, nsGUIEvent * 0x0012f778, unsigned int 28, nsEventStatus * 0x0012f66c, int 1, int & 1) line 365 nsViewManager::DispatchEvent(nsViewManager * const 0x02e5aef0, nsGUIEvent * 0x0012f778, nsEventStatus * 0x0012f66c) line 2094 HandleEvent(nsGUIEvent * 0x0012f778) line 83 nsWindow::DispatchEvent(nsWindow * const 0x047a1744, nsGUIEvent * 0x0012f778, nsEventStatus & nsEventStatus_eIgnore) line 747 + 10 bytes nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f778) line 768 nsWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 4318 + 21 bytes ChildWindow::DispatchMouseEvent(unsigned int 301, nsPoint * 0x00000000) line 4570 nsWindow::ProcessMessage(unsigned int 514, unsigned int 0, long 2031666, long * 0x0012fb94) line 3253 + 24 bytes nsWindow::WindowProc(HWND__ * 0x000601ee, unsigned int 514, unsigned int 0, long 2031666) line 1015 + 27 bytes USER32! 77e148dc() USER32! 77e14aa7() USER32! 77e266fd() nsAppShellService::Run(nsAppShellService * const 0x012e49b0) line 457 main1(int 1, char * * 0x00484300, nsISupports * 0x00000000) line 1293 + 32 bytes main(int 1, char * * 0x00484300) line 1621 + 37 bytes mainCRTStartup() line 338 + 17 bytes KERNEL32! 77e992a6()
Some of the traces in this bug look like bug 101554
*** Bug 105508 has been marked as a duplicate of this bug. ***
*** Bug 106299 has been marked as a duplicate of this bug. ***
Status: NEW → ASSIGNED
Target Milestone: --- → mozilla1.0.1
I have a fix for the crash that results in the stack in comment #11, it is in bug 108105 - essentially it just checks to see if the webShell is being destroyed in the contentSink before starting layout.
Cannot reproduce this issue anymore on Win2K with build 2001121003. Seems that fix metioned in previous comment works fine.
Not sure if this is the same bug or not. Using 0.9.7 on Mac OS X, I see 100% reproducible crashing under even less-restricted circumstances. Steps: launch mozilla (opens default mozilla start page) command-click a link (opens link in new bkgnd tab w/ my prefs) [[ you should now have two tabs ]] command-w to close the current tab wait a couple of seconds expected behavior: tab "toolbar" goes away, things are a-ok observed behavior: mozilla crashes Note that this has zero relation to the "transfering data" stage. I can open two tabs and wait until both are completely loaded. Then when I close one tab, Mozilla crashes. Note also that this is not specific to two tabs. I first noticed the bug in doing my normal "daily surf" in which I go to my "start page" and open about a dozen links in the background. I then start reading pages, closing tabs as I finish them, and opening links in the background in new tabs as I find interesting things. I had three crashes in the course of trying to complete this activity before I started searching for this bug. At the time, I wasn't sure what was required to obtain a crash as I imagine that the many tabs were all in various stages of loading and had various types of content. After reading this bug, I found that above steps invariably crashed mozilla for me. Going back to the many-tabs scenario, I found that I could not consistantly get a crash. However, in the two-tab scenario above, I got a crash every time, in about a dozen tests. -matt
spam - forgot to cc myself
is there a possible connection with bug 117126 here?
WFM in MacOS 9. It's been happening since sometime after 0.9.7 at least. I first noticed it when browsing monster.com. Would do a job search and then browse a specific job in a new tab. If tab was closed quickly through clicking or cmd-w, browser crashes and hangs the whole computer. WFM in MacOS X except it doesn't hang the computer (yeah modern stuff in your OS :)
m_mozilla@wickline.org : do you have tooltips enabled? Asking b/c your comment #17 looks much like bug 120863.
yes, I did have tooltips enabled, and that may well have been the bug causing what I saw. I haven't seen the same behavior in more recent builds, but then I've also changed my browsing habits a bit. I now have the tab toolbar always visible, instead of show when needed. I also out of paranoia tend to let old tabs just sit around when I'm done with them. Some time when I'm sure nothing is loading I go through and close all the stale tabs. I still occasionally run into what feel like tab-closing-related crashes on the machine I'm using right at this moment (which has a Feb 17th build on it), but don't think I've run into them on my other machine for a while (which always has a build current to within a couple days). I still browse like a wuss on this machine (afraid to close tabs), but on the other machine I've been getting increasingly braver without noticing any tab-closing-related crashes. So, I *think* that whatever I was seeing has been fixed by now. ...so whatever I was seeing is probably not the same thing as in this bug... and not the same thing as bug 120863 either. I guess whatever it was I was seeing may have been fixed before it got a well-defined bug of its own. -matt
I used to be able to reproduce this bug 100% of the time (see comment #17), but have not had any problem for a while. Not sure when things got better. I can no longer make the bug happen at all. WFM, but I'm not marking it as such, as perhaps other folks are still seeing problems. Mac OS X build 2002040108 -matt (also removing self from cc now)
marking worksforme. If anyone can reproduce this bug [as originally described] then please reopen (with the relevant details).
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: