Closed Bug 1569639 Opened 8 months ago Closed 7 months ago

Assertion failure: !mHasRepeatAuto || (mSizingFunctions.Length() >= 1 && mRepeatAutoStart < mSizingFunctions.Length()), at /builds/worker/workspace/build/src/layout/generic/nsGridContainerFrame.cpp:1286

Categories

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

defect

Tracking

()

RESOLVED DUPLICATE of bug 1528771
Tracking Status
firefox70 --- affected

People

(Reporter: jkratzer, Assigned: mats)

References

(Blocks 2 open bugs)

Details

(Keywords: assertion, testcase)

Attachments

(1 file)

Attached file testcase.html

Testcase found while fuzzing mozilla-central rev 50df4b75c9b6

Assertion failure: !mHasRepeatAuto || (mSizingFunctions.Length() >= 1 && mRepeatAutoStart < mSizingFunctions.Length()), at /builds/worker/workspace/build/src/layout/generic/nsGridContainerFrame.cpp:1286

rax = 0x00005646d187a180   rdx = 0x00007fe0420d7c86
rcx = 0x0000000000000b40   rbx = 0x00007fffc61554b0
rsi = 0x00007fe04d7f28b0   rdi = 0x00007fe04d7f1680
rbp = 0x00007fffc6154c40   rsp = 0x00007fffc6154c30
r8 = 0x00007fe04d7f28b0    r9 = 0x00007fe04e95c780
r10 = 0x0000000000000000   r11 = 0x0000000000000000
r12 = 0x0000000000000000   r13 = 0x00007fe01a243e90
r14 = 0x00007fe019fb3a48   r15 = 0x00007fffc6154cd7
rip = 0x00007fe03e6e742a
OS|Linux|0.0.0 Linux 4.18.0-25-generic #26~18.04.1-Ubuntu SMP Thu Jun 27 07:28:31 UTC 2019 x86_64
CPU|amd64|family 6 model 94 stepping 3|1
GPU|||
Crash|SIGSEGV|0x0|0
0|0|libxul.so|nsGridContainerFrame::TrackSizingFunctions::TrackSizingFunctions(nsTArray<mozilla::StyleGenericTrackSize<mozilla::StyleLengthPercentage> > const&, mozilla::StyleGenericTrackSize<mozilla::StyleLengthPercentage> const&, bool, int)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGridContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|1284|0x40
0|1|libxul.so|nsGridContainerFrame::GridReflowInput::GridReflowInput(nsGridContainerFrame*, gfxContext&, mozilla::ReflowInput const*, nsStylePosition const*, mozilla::WritingMode const&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGridContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2506|0x1e
0|2|libxul.so|nsGridContainerFrame::GridReflowInput::GridReflowInput(nsGridContainerFrame*, gfxContext&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGridContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2217|0x24
0|3|libxul.so|nsGridContainerFrame::IntrinsicISize(gfxContext*, nsLayoutUtils::IntrinsicISizeType)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGridContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|7530|0xe
0|4|libxul.so|nsGridContainerFrame::GetMinISize(gfxContext*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGridContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|7588|0x11
0|5|libxul.so|nsFrame::ShrinkWidthToFit(gfxContext*, int, nsIFrame::ComputeSizeFlags)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|6384|0x10
0|6|libxul.so|nsContainerFrame::ComputeAutoSize(gfxContext*, mozilla::WritingMode, mozilla::LogicalSize const&, int, mozilla::LogicalSize const&, mozilla::LogicalSize const&, mozilla::LogicalSize const&, nsIFrame::ComputeSizeFlags)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|812|0xe
0|7|libxul.so|nsFrame::ComputeSize(gfxContext*, mozilla::WritingMode, mozilla::LogicalSize const&, int, mozilla::LogicalSize const&, mozilla::LogicalSize const&, mozilla::LogicalSize const&, nsIFrame::ComputeSizeFlags)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|5682|0x3b
0|8|libxul.so|mozilla::ReflowInput::InitConstraints(nsPresContext*, mozilla::Maybe<mozilla::LogicalSize> const&, nsMargin const*, nsMargin const*, mozilla::LayoutFrameType)|hg:hg.mozilla.org/mozilla-central:layout/generic/ReflowInput.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2478|0xd
0|9|libxul.so|mozilla::ReflowInput::Init(nsPresContext*, mozilla::Maybe<mozilla::LogicalSize> const&, nsMargin const*, nsMargin const*)|hg:hg.mozilla.org/mozilla-central:layout/generic/ReflowInput.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|353|0x1a
0|10|libxul.so|nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsLineLayout.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|819|0x59
0|11|libxul.so|nsBlockFrame::ReflowInlineFrame(mozilla::BlockReflowInput&, nsLineLayout&, nsLineList_iterator, nsIFrame*, LineReflowStatus*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4303|0x14
0|12|libxul.so|nsBlockFrame::DoReflowInlineFrames(mozilla::BlockReflowInput&, nsLineLayout&, nsLineList_iterator, nsFlowAreaRect&, int&, nsFloatManager::SavedState*, bool*, LineReflowStatus*, bool)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4105|0x2d
0|13|libxul.so|nsBlockFrame::ReflowInlineFrames(mozilla::BlockReflowInput&, nsLineList_iterator, bool*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|3992|0x41
0|14|libxul.so|nsBlockFrame::ReflowLine(mozilla::BlockReflowInput&, nsLineList_iterator, bool*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2995|0x20
0|15|libxul.so|nsBlockFrame::ReflowDirtyLines(mozilla::BlockReflowInput&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2536|0x20
0|16|libxul.so|nsBlockFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|1285|0xf
0|17|libxul.so|nsBlockReflowContext::ReflowBlock(mozilla::LogicalRect const&, bool, nsCollapsingMargin&, int, bool, nsLineBox*, mozilla::ReflowInput&, nsReflowStatus&, mozilla::BlockReflowInput&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockReflowContext.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|297|0x10
0|18|libxul.so|nsBlockFrame::ReflowBlockFrame(mozilla::BlockReflowInput&, nsLineList_iterator, bool*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|3630|0x1e
0|19|libxul.so|nsBlockFrame::ReflowLine(mozilla::BlockReflowInput&, nsLineList_iterator, bool*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2992|0x19
0|20|libxul.so|nsBlockFrame::ReflowDirtyLines(mozilla::BlockReflowInput&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2536|0x20
0|21|libxul.so|nsBlockFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsBlockFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|1285|0xf
0|22|libxul.so|nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, mozilla::WritingMode const&, mozilla::LogicalPoint const&, nsSize const&, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|895|0x1d
0|23|libxul.so|nsCanvasFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsCanvasFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|732|0x4d
0|24|libxul.so|nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, mozilla::WritingMode const&, mozilla::LogicalPoint const&, nsSize const&, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|895|0x1d
0|25|libxul.so|nsHTMLScrollFrame::ReflowScrolledFrame(mozilla::ScrollReflowInput*, bool, bool, mozilla::ReflowOutput*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGfxScrollFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|630|0x5
0|26|libxul.so|nsHTMLScrollFrame::ReflowContents(mozilla::ScrollReflowInput*, mozilla::ReflowOutput const&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGfxScrollFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|742|0xe
0|27|libxul.so|nsHTMLScrollFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsGfxScrollFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|1143|0x5
0|28|libxul.so|nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, int, int, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsContainerFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|934|0x19
0|29|libxul.so|mozilla::ViewportFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)|hg:hg.mozilla.org/mozilla-central:layout/generic/ViewportFrame.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|310|0x2b
0|30|libxul.so|mozilla::PresShell::DoReflow(nsIFrame*, bool, mozilla::OverflowChangedTracker*)|hg:hg.mozilla.org/mozilla-central:layout/base/PresShell.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|9301|0x21
0|31|libxul.so|mozilla::PresShell::ProcessReflowCommands(bool)|hg:hg.mozilla.org/mozilla-central:layout/base/PresShell.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|9471|0x11
0|32|libxul.so|mozilla::PresShell::DoFlushPendingNotifications(mozilla::ChangesToFlush)|hg:hg.mozilla.org/mozilla-central:layout/base/PresShell.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4238|0x15
0|33|libxul.so|nsRefreshDriver::Tick(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp)|hg:hg.mozilla.org/mozilla-central:layout/base/nsRefreshDriver.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|2013|0x13
0|34|libxul.so|mozilla::RefreshDriverTimer::TickRefreshDrivers(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&)|hg:hg.mozilla.org/mozilla-central:layout/base/nsRefreshDriver.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|348|0xb
0|35|libxul.so|mozilla::RefreshDriverTimer::Tick(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp)|hg:hg.mozilla.org/mozilla-central:layout/base/nsRefreshDriver.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|364|0xf
0|36|libxul.so|mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp)|hg:hg.mozilla.org/mozilla-central:layout/base/nsRefreshDriver.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|731|0xf
0|37|libxul.so|mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run()|hg:hg.mozilla.org/mozilla-central:layout/base/nsRefreshDriver.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|531|0x15
0|38|libxul.so|nsThread::ProcessNextEvent(bool, bool*)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|1224|0x15
0|39|libxul.so|NS_ProcessNextEvent(nsIThread*, bool)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|486|0x11
0|40|libxul.so|mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*)|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|88|0xa
0|41|libxul.so|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:50df4b75c9b6c7fec8c8c4685fd188634d193e75|315|0x17
0|42|libxul.so|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:50df4b75c9b6c7fec8c8c4685fd188634d193e75|290|0x8
0|43|libxul.so|nsBaseAppShell::Run()|hg:hg.mozilla.org/mozilla-central:widget/nsBaseAppShell.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|137|0xd
0|44|libxul.so|nsAppStartup::Run()|hg:hg.mozilla.org/mozilla-central:toolkit/components/startup/nsAppStartup.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|276|0xe
0|45|libxul.so|XREMain::XRE_mainRun()|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsAppRunner.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4636|0x11
0|46|libxul.so|XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&)|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsAppRunner.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4771|0x8
0|47|libxul.so|XRE_main(int, char**, mozilla::BootstrapConfig const&)|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsAppRunner.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|4852|0x5
0|48|firefox-bin|do_main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|213|0x22
0|49|firefox-bin|main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:50df4b75c9b6c7fec8c8c4685fd188634d193e75|295|0xf
0|50|libc-2.27.so||||0x21b97
0|51|firefox-bin|MOZ_ReportCrash|hg:hg.mozilla.org/mozilla-central:mfbt/Assertions.h:50df4b75c9b6c7fec8c8c4685fd188634d193e75|184|0x5
Flags: in-testsuite?

The priority flag is not set for this bug.
:mats, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(mats)
Priority: -- → P3

I suspect this may also be related to multiple values on auto repeat().

Blocks: css-grid

I'm fixing this in bug 1560397 and I'll include this testcase as a crashtest there.

Assignee: nobody → mats
Status: NEW → RESOLVED
Closed: 7 months ago
Flags: needinfo?(mats)
Flags: in-testsuite?
Flags: in-testsuite+
OS: Unspecified → All
Hardware: Unspecified → All
Resolution: --- → DUPLICATE
Duplicate of bug: 1528771
You need to log in before you can comment on or make changes to this bug.