Open Bug 323498 Opened 19 years ago Updated 2 years ago

ASSERTION: Second ancestor is not BODY

Categories

(Core :: Layout, defect)

defect

Tracking

()

Tracking Status
firefox-esr52 --- wontfix
firefox56 --- wontfix
firefox57 --- wontfix
firefox58 --- wontfix
firefox59 --- ?

People

(Reporter: jruderman, Unassigned)

References

Details

(Keywords: assertion, testcase)

Attachments

(1 file)

###!!! ASSERTION: Second ancestor is not BODY: 'contentTag == nsHTMLAtoms::body', file /Users/admin/trunk/mozilla/layout/generic/nsHTMLReflowState.cpp, line 1548
Attached file testcase
Blocks: cssgen
This still happens on trunk.

See also bug 384504, "ASSERTION: First ancestor is not HTML".
This assertion is in CalcQuirkContainingBlockHeight, which we call because there's a percent height and we're in quirks mode.

We're basically asserting that the two frames directly below the canvas will have content with HTML and Body tags, respectively.

In this case, that assumption is false -- the second frame has a **Head** tag, (not Body), because the head has been told (via CSS) to be displayed.

So, it looks like this assertion's assumption is too strong.  We may be able to just ease up on what we're asserting, or leave the condition the same but change the assertion to a warning.
Still happens on trunk.
Still hits to this day :)

ASSERTION: Second ancestor is not BODY: 'frameContent->IsHTMLElement(nsGkAtoms::body)', file layout/generic/ReflowInput.cpp, line 2078
#01: mozilla::ReflowInput::ComputeContainingBlockRectangle [layout/generic/ReflowInput.cpp:2155]
#02: mozilla::ReflowInput::InitConstraints [layout/generic/ReflowInput.cpp:2263]
#03: mozilla::ReflowInput::Init [layout/generic/ReflowInput.cpp:427]
#04: nsBlockReflowContext::ComputeCollapsedBStartMargin [layout/generic/nsBlockReflowContext.cpp:171]
#05: nsBlockFrame::ReflowBlockFrame [layout/generic/nsBlockFrame.cpp:3367]
#06: nsBlockFrame::ReflowLine [layout/generic/nsBlockFrame.cpp:2870]
#07: nsBlockFrame::ReflowDirtyLines [layout/generic/nsBlockFrame.cpp:2409]
#08: nsBlockFrame::Reflow [layout/generic/nsBlockFrame.cpp:1248]
#09: nsContainerFrame::ReflowChild [layout/generic/nsContainerFrame.cpp:937]
#10: nsCanvasFrame::Reflow [layout/generic/nsCanvasFrame.cpp:756]
#11: nsContainerFrame::ReflowChild [layout/generic/nsContainerFrame.cpp:937]
#12: nsHTMLScrollFrame::ReflowScrolledFrame [layout/generic/nsGfxScrollFrame.cpp:554]
#13: nsHTMLScrollFrame::ReflowContents [layout/generic/nsGfxScrollFrame.cpp:684]
#14: nsHTMLScrollFrame::Reflow [layout/generic/nsGfxScrollFrame.cpp:1041]
#15: nsContainerFrame::ReflowChild [layout/generic/nsContainerFrame.cpp:980]
#16: mozilla::ViewportFrame::Reflow [layout/generic/ViewportFrame.cpp:332]
#17: mozilla::PresShell::DoReflow [layout/generic/ReflowOutput.h:282]
#18: mozilla::PresShell::ProcessReflowCommands [layout/base/PresShell.cpp:9121]
#19: mozilla::PresShell::DoFlushPendingNotifications [layout/base/PresShell.cpp:4183]
#20: mozilla::PresShell::DoFlushPendingNotifications [layout/base/PresShell.cpp:4019]
#21: nsDocumentViewer::LoadComplete [layout/base/nsIPresShell.h:557]
#22: nsDocShell::EndPageLoad [docshell/base/nsDocShell.cpp:7761]
#23: nsDocShell::OnStateChange [docshell/base/nsDocShell.cpp:7557]
#24: nsDocLoader::DoFireOnStateChange [uriloader/base/nsDocLoader.cpp:1320]
#25: nsDocLoader::doStopDocumentLoad [uriloader/base/nsDocLoader.cpp:860]
#26: nsDocLoader::DocLoaderIsEmpty [uriloader/base/nsDocLoader.cpp:752]
#27: nsDocLoader::OnStopRequest [uriloader/base/nsDocLoader.cpp:625]
#28: mozilla::net::nsLoadGroup::RemoveRequest [netwerk/base/nsLoadGroup.cpp:631]
#29: nsDocument::DoUnblockOnload [dom/base/nsDocument.cpp:9364]
#30: nsDocument::UnblockOnload [dom/base/nsDocument.cpp:9288]
#31: nsDocument::DispatchContentLoadedEvents [dom/base/nsDocument.cpp:5575]
#32: mozilla::detail::RunnableMethodImpl<nsDocument*, void (nsDocument::*)(), true, (mozilla::RunnableKind)0u>::Run [xpcom/threads/nsThreadUtils.h:1196]
#33: mozilla::SchedulerGroup::Runnable::Run [xpcom/threads/SchedulerGroup.cpp:396]
#34: nsThread::ProcessNextEvent [mfbt/Maybe.h:445]
#35: NS_ProcessNextEvent [xpcom/threads/nsThreadUtils.cpp:524]
#36: mozilla::ipc::MessagePump::Run [ipc/glue/MessagePump.cpp:98]
#37: MessageLoop::RunInternal [ipc/chromium/src/base/message_loop.cc:327]
#38: MessageLoop::Run [ipc/chromium/src/base/message_loop.cc:298]
#39: nsBaseAppShell::Run [widget/nsBaseAppShell.cpp:160]
#40: XRE_RunAppShell [toolkit/xre/nsEmbedFunctions.cpp:834]
#41: mozilla::ipc::MessagePumpForChildProcess::Run [ipc/glue/MessagePump.cpp:269]
#42: MessageLoop::RunInternal [ipc/chromium/src/base/message_loop.cc:327]
#43: MessageLoop::Run [ipc/chromium/src/base/message_loop.cc:298]
#44: XRE_InitChildProcess [toolkit/xre/nsEmbedFunctions.cpp:707]
#45: content_process_main [ipc/contentproc/plugin-container.cpp:65]
#46: main [browser/app/nsBrowserApp.cpp:283]
#47: libc.so.6 + 0x20830
#48: _start
Has Regression Range: --- → no
OS: Mac OS X → All
Hardware: PowerPC → All
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: