Closed
Bug 1404552
Opened 7 years ago
Closed 4 years ago
Assertion failure: !nsSVGUtils::OuterSVGIsCallingReflowSVG(this) in [@ SVGTextFrame::ScheduleReflowSVGNonDisplayText]
Categories
(Core :: SVG, defect, P3)
Core
SVG
Tracking
()
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox56 | --- | unaffected |
firefox57 | --- | fixed |
firefox58 | --- | affected |
People
(Reporter: tsmith, Assigned: jwatt)
References
(Blocks 1 open bug)
Details
(Keywords: assertion, regression, testcase)
Attachments
(1 file)
193 bytes,
text/html
|
Details |
Assertion failure: !nsSVGUtils::OuterSVGIsCallingReflowSVG(this) (do not call ScheduleReflowSVGNonDisplayText when the outer SVG frame is under ReflowSVG), at /src/layout/svg/SVGTextFrame.cpp:3299
#0 SVGTextFrame::ScheduleReflowSVGNonDisplayText(nsIPresShell::IntrinsicDirty) /src/layout/svg/SVGTextFrame.cpp:3300:3
#1 nsFrame::DidSetStyleContext(nsStyleContext*) /src/layout/generic/nsFrame.cpp:909:21
#2 nsFrame::Init(nsIContent*, nsContainerFrame*, nsIFrame*) /src/layout/generic/nsFrame.cpp:700:3
#3 nsContinuingTextFrame::Init(nsIContent*, nsContainerFrame*, nsIFrame*) /src/layout/generic/nsTextFrame.cpp:4509:12
#4 nsCSSFrameConstructor::CreateContinuingFrame(nsPresContext*, nsIFrame*, nsContainerFrame*, bool) /src/layout/base/nsCSSFrameConstructor.cpp:9297:15
#5 CreateContinuation(nsIFrame*, nsIFrame**, bool) /src/layout/base/nsBidiPresUtils.cpp:652:5
#6 nsBidiPresUtils::ResolveParagraph(BidiParagraphData*) /src/layout/base/nsBidiPresUtils.cpp:923:16
#7 nsBidiPresUtils::Resolve(nsBlockFrame*) /src/layout/base/nsBidiPresUtils.cpp:764:10
#8 SVGTextFrame::MaybeResolveBidiForAnonymousBlockChild() /src/layout/svg/SVGTextFrame.cpp:5399:5
#9 mozilla::TextNodeCorrespondenceRecorder::RecordCorrespondence(SVGTextFrame*) /src/layout/svg/SVGTextFrame.cpp:1397:12
#10 SVGTextFrame::MaybeReflowAnonymousBlockChild() /src/layout/svg/SVGTextFrame.cpp:5422:5
#11 SVGTextFrame::ReflowSVGNonDisplayText() /src/layout/svg/SVGTextFrame.cpp:3290:3
#12 nsSVGContainerFrame::ReflowSVGNonDisplayText(nsIFrame*) /src/layout/svg/nsSVGContainerFrame.cpp:122:40
#13 nsSVGDisplayContainerFrame::ReflowSVG() /src/layout/svg/nsSVGContainerFrame.cpp:364:11
#14 nsSVGOuterSVGFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/svg/nsSVGOuterSVGFrame.cpp:455:14
#15 nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /src/layout/generic/nsLineLayout.cpp:921:13
#16 nsBlockFrame::ReflowInlineFrame(mozilla::BlockReflowInput&, nsLineLayout&, nsLineList_iterator, nsIFrame*, LineReflowStatus*) /src/layout/generic/nsBlockFrame.cpp:4220:15
#17 nsBlockFrame::DoReflowInlineFrames(mozilla::BlockReflowInput&, nsLineLayout&, nsLineList_iterator, nsFlowAreaRect&, int&, nsFloatManager::SavedState*, bool*, LineReflowStatus*, bool) /src/layout/generic/nsBlockFrame.cpp:4016:5
#18 nsBlockFrame::ReflowInlineFrames(mozilla::BlockReflowInput&, nsLineList_iterator, bool*) /src/layout/generic/nsBlockFrame.cpp:3890:9
#19 nsBlockFrame::ReflowLine(mozilla::BlockReflowInput&, nsLineList_iterator, bool*) /src/layout/generic/nsBlockFrame.cpp:2873:5
#20 nsBlockFrame::ReflowDirtyLines(mozilla::BlockReflowInput&) /src/layout/generic/nsBlockFrame.cpp:2409:7
#21 nsBlockFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/generic/nsBlockFrame.cpp:1235:3
#22 nsBlockReflowContext::ReflowBlock(mozilla::LogicalRect const&, bool, nsCollapsingMargin&, int, bool, nsLineBox*, mozilla::ReflowInput&, nsReflowStatus&, mozilla::BlockReflowInput&) /src/layout/generic/nsBlockReflowContext.cpp:306:11
#23 nsBlockFrame::ReflowBlockFrame(mozilla::BlockReflowInput&, nsLineList_iterator, bool*) /src/layout/generic/nsBlockFrame.cpp:3521:11
#24 nsBlockFrame::ReflowLine(mozilla::BlockReflowInput&, nsLineList_iterator, bool*) /src/layout/generic/nsBlockFrame.cpp:2870:5
#25 nsBlockFrame::ReflowDirtyLines(mozilla::BlockReflowInput&) /src/layout/generic/nsBlockFrame.cpp:2409:7
#26 nsBlockFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/generic/nsBlockFrame.cpp:1235:3
#27 nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, mozilla::WritingMode const&, mozilla::LogicalPoint const&, nsSize const&, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*) /src/layout/generic/nsContainerFrame.cpp:932:14
#28 nsCanvasFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/generic/nsCanvasFrame.cpp:752:5
#29 nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, mozilla::WritingMode const&, mozilla::LogicalPoint const&, nsSize const&, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*) /src/layout/generic/nsContainerFrame.cpp:932:14
#30 nsHTMLScrollFrame::ReflowScrolledFrame(mozilla::ScrollReflowInput*, bool, bool, mozilla::ReflowOutput*, bool) /src/layout/generic/nsGfxScrollFrame.cpp:548:3
#31 nsHTMLScrollFrame::ReflowContents(mozilla::ScrollReflowInput*, mozilla::ReflowOutput const&) /src/layout/generic/nsGfxScrollFrame.cpp:660:3
#32 nsHTMLScrollFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/generic/nsGfxScrollFrame.cpp:1037:3
#33 nsContainerFrame::ReflowChild(nsIFrame*, nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, int, int, unsigned int, nsReflowStatus&, nsOverflowContinuationTracker*) /src/layout/generic/nsContainerFrame.cpp:976:14
#34 mozilla::ViewportFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /src/layout/generic/ViewportFrame.cpp:330:7
#35 mozilla::PresShell::DoReflow(nsIFrame*, bool) /src/layout/base/PresShell.cpp:8936:11
#36 mozilla::PresShell::ProcessReflowCommands(bool) /src/layout/base/PresShell.cpp:9109:24
#37 mozilla::PresShell::DoFlushPendingNotifications(mozilla::ChangesToFlush) /src/layout/base/PresShell.cpp:4182:11
#38 nsRefreshDriver::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:1956:16
#39 mozilla::RefreshDriverTimer::TickRefreshDrivers(long, mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) /src/layout/base/nsRefreshDriver.cpp:307:7
#40 mozilla::RefreshDriverTimer::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:328:5
#41 mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:770:5
#42 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:683:35
#43 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() /src/layout/base/nsRefreshDriver.cpp:529:20
#44 nsThread::ProcessNextEvent(bool, bool*) /src/xpcom/threads/nsThread.cpp:1039:14
#45 NS_ProcessNextEvent(nsIThread*, bool) /src/xpcom/threads/nsThreadUtils.cpp:524:10
#46 mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:97:21
#47 MessageLoop::RunInternal() /src/ipc/chromium/src/base/message_loop.cc:326:10
#48 MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299:3
#49 nsBaseAppShell::Run() /src/widget/nsBaseAppShell.cpp:158:27
#50 nsAppStartup::Run() /src/toolkit/components/startup/nsAppStartup.cpp:288:30
#51 XREMain::XRE_mainRun() /src/toolkit/xre/nsAppRunner.cpp:4701:22
#52 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4865:8
#53 XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4960:21
#54 do_main(int, char**, char**) /src/browser/app/nsBrowserApp.cpp:231:22
#55 main /src/browser/app/nsBrowserApp.cpp:304:16
#56 __libc_start_main /build/glibc-bfm8X4/glibc-2.23/csu/../csu/libc-start.c:291
#57 _start (firefox+0x41eb24)
Flags: in-testsuite?
Comment 1•7 years ago
|
||
INFO: Last good revision: a86e0e1c7c6318e9664af75c05bcb3ea79687cf4
INFO: First bad revision: 309140f65fc5820fa8ccab5f238d8d5c48283f82
INFO: Pushlog:
https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=a86e0e1c7c6318e9664af75c05bcb3ea79687cf4&tochange=309140f65fc5820fa8ccab5f238d8d5c48283f82
And I confirmed that this reproduced on Beta prior to bug 1403583 landing there.
Blocks: 1342951
Has Regression Range: --- → yes
status-firefox56:
--- → unaffected
status-firefox57:
--- → fixed
status-firefox-esr52:
--- → unaffected
Updated•7 years ago
|
Assignee: nobody → jwatt
Priority: -- → P1
Comment 2•7 years ago
|
||
Jonathan: I marked this P1 because I thought it's also fixed by bug 1402109 (like other dupes of bug 1403583.) Please confirm if this is still an issue. Thx!
Flags: needinfo?(jwatt)
Assignee | ||
Comment 3•7 years ago
|
||
No, it's a different issue, unfortunately. Investigating.
Flags: needinfo?(jwatt)
Updated•7 years ago
|
Priority: P1 → P3
Comment 4•4 years ago
|
||
Doesn't seem to assert any more.
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
Updated•4 years ago
|
Keywords: regression
You need to log in
before you can comment on or make changes to this bug.
Description
•