Closed Bug 1506306 Opened 6 years ago Closed 6 years ago

Assertion failure: !mOwner->IsColumnSpanInMulticolSubtree(), at src/layout/base/RestyleManager.cpp:2012

Categories

(Core :: Layout: Columns, defect, P3)

defect

Tracking

()

RESOLVED FIXED
mozilla66
Tracking Status
firefox-esr60 --- unaffected
firefox63 --- unaffected
firefox64 --- unaffected
firefox65 --- disabled
firefox66 --- fixed

People

(Reporter: tsmith, Assigned: TYLin)

References

(Blocks 1 open bug)

Details

(Keywords: assertion, testcase)

Attachments

(2 files)

Attached file testcase.html
Assertion failure: !mOwner->IsColumnSpanInMulticolSubtree(), at src/layout/base/RestyleManager.cpp:2012

#0 mozilla::ServoRestyleState::AssertOwner(mozilla::ServoRestyleState const&) const src/layout/base/RestyleManager.cpp:2011:3
#1 void mozilla::Maybe<mozilla::ServoRestyleState>::emplace<nsIFrame&, mozilla::ServoRestyleState&, nsChangeHint&, mozilla::ServoRestyleState::Type&>(nsIFrame&, mozilla::ServoRestyleState&, nsChangeHint&, mozilla::ServoRestyleState::Type&) src/obj-firefox/dist/include/mozilla/Maybe.h:592:32
#2 mozilla::RestyleManager::ProcessPostTraversal(mozilla::dom::Element*, mozilla::ComputedStyle*, mozilla::ServoRestyleState&, mozilla::ServoPostTraversalFlags) src/layout/base/RestyleManager.cpp:2755:27
#3 mozilla::RestyleManager::ProcessPostTraversal(mozilla::dom::Element*, mozilla::ComputedStyle*, mozilla::ServoRestyleState&, mozilla::ServoPostTraversalFlags) src/layout/base/RestyleManager.cpp:2841:32
#4 mozilla::RestyleManager::ProcessPostTraversal(mozilla::dom::Element*, mozilla::ComputedStyle*, mozilla::ServoRestyleState&, mozilla::ServoPostTraversalFlags) src/layout/base/RestyleManager.cpp:2841:32
#5 mozilla::RestyleManager::ProcessPostTraversal(mozilla::dom::Element*, mozilla::ComputedStyle*, mozilla::ServoRestyleState&, mozilla::ServoPostTraversalFlags) src/layout/base/RestyleManager.cpp:2841:32
#6 mozilla::RestyleManager::DoProcessPendingRestyles(mozilla::ServoTraversalFlags) src/layout/base/RestyleManager.cpp:3048:28
#7 mozilla::PresShell::DoFlushPendingNotifications(mozilla::ChangesToFlush) src/layout/base/PresShell.cpp:4359:39
#8 nsRefreshDriver::Tick(mozilla::TimeStamp) src/layout/base/nsRefreshDriver.cpp:1907:18
#9 mozilla::RefreshDriverTimer::TickRefreshDrivers(mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) src/layout/base/nsRefreshDriver.cpp:301:7
#10 mozilla::RefreshDriverTimer::Tick(mozilla::TimeStamp) src/layout/base/nsRefreshDriver.cpp:318:5
#11 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) src/layout/base/nsRefreshDriver.cpp:676:16
#12 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() src/layout/base/nsRefreshDriver.cpp:514:20
#13 nsThread::ProcessNextEvent(bool, bool*) src/xpcom/threads/nsThread.cpp:1246:14
#14 NS_ProcessNextEvent(nsIThread*, bool) src/xpcom/threads/nsThreadUtils.cpp:530:10
#15 mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) src/ipc/glue/MessagePump.cpp:97:21
#16 MessageLoop::RunInternal() src/ipc/chromium/src/base/message_loop.cc:325:10
#17 MessageLoop::Run() src/ipc/chromium/src/base/message_loop.cc:298:3
#18 nsBaseAppShell::Run() src/widget/nsBaseAppShell.cpp:158:27
#19 nsAppStartup::Run() src/toolkit/components/startup/nsAppStartup.cpp:290:30
#20 XREMain::XRE_mainRun() src/toolkit/xre/nsAppRunner.cpp:4789:22
#21 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) src/toolkit/xre/nsAppRunner.cpp:4934:8
#22 XRE_main(int, char**, mozilla::BootstrapConfig const&) src/toolkit/xre/nsAppRunner.cpp:5026:21
#23 do_main(int, char**, char**) src/browser/app/nsBrowserApp.cpp:233:22
#24 main src/browser/app/nsBrowserApp.cpp:315:16
#25 __libc_start_main /build/glibc-Cl5G7W/glibc-2.23/csu/../csu/libc-start.c:291
#26 _start (firefox+0x329f4)
Flags: in-testsuite?
Assignee: nobody → aethanyc
Status: NEW → ASSIGNED
Priority: -- → P3
The main style of <table> is set on the inner TableFrame, not the outer TableWrapperFrame. Thus, we fail to spot the table as a column-span kid in nsCSSFrameConstructor::ConstructionBlock(). https://searchfox.org/mozilla-central/rev/3fdc51e66c9487b39220ad58dcee275fca070ccd/layout/base/nsCSSFrameConstructor.cpp#10569
The main style of <table> is set on the inner TableFrame, not the outer
TableWrapperFrame. Thus, we fail to spot the table as a column-span kid
in nsCSSFrameConstructor::ConstructionBlock().
Pushed by aethanyc@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/5b7718956a45
Fix <table> having "column-span:all" style. r=bzbarsky
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/14518 for changes under testing/web-platform/tests
https://hg.mozilla.org/mozilla-central/rev/5b7718956a45
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
Is there a user impact here which justifies uplift consideration or can this ride the trains?
Flags: needinfo?(aethanyc)
Flags: in-testsuite?
Flags: in-testsuite+
This bug requires "layout.css.column-span.enabled" to be true, but the pref is still off on Nightly (bug 1423383 is to enable it) There's no user impact.
Flags: needinfo?(aethanyc)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: