Closed Bug 1432700 Opened 6 years ago Closed 6 years ago

Assertion failure: n2 >= -epsilon, at /src/gfx/2d/BezierUtils.cpp:335

Categories

(Core :: Graphics, defect)

60 Branch
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox59 --- affected
firefox60 --- affected

People

(Reporter: tsmith, Assigned: sotaro)

References

(Blocks 1 open bug)

Details

(Keywords: assertion, testcase)

Attachments

(1 file)

Attached file testcase.html
Assertion failure: n2 >= -epsilon, at /src/gfx/2d/BezierUtils.cpp:335

#0 mozilla::gfx::CalculateDistanceToEllipticArc(mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, float, float) /src/gfx/2d/BezierUtils.cpp:334:3
#1 mozilla::DottedCornerFinder::FindNext(float) /src/layout/painting/DottedCornerFinder.cpp:295:11
#2 mozilla::DottedCornerFinder::GetCountAndLastOverlap(float, unsigned long*, float*) /src/layout/painting/DottedCornerFinder.cpp:556:27
#3 mozilla::DottedCornerFinder::FindBestOverlap(float, float, float) /src/layout/painting/DottedCornerFinder.cpp:410:10
#4 mozilla::DottedCornerFinder::DetermineType(float, float) /src/layout/painting/DottedCornerFinder.cpp:157:5
#5 mozilla::DottedCornerFinder::DottedCornerFinder(mozilla::gfx::Bezier const&, mozilla::gfx::Bezier const&, mozilla::Corner, float, float, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, float, mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&, float, mozilla::gfx::SizeTyped<mozilla::gfx::UnknownUnits, float> const&) /src/layout/painting/DottedCornerFinder.cpp:74:3
#6 nsCSSBorderRenderer::DrawDottedCornerSlow(mozilla::Side, mozilla::Corner) /src/layout/painting/nsCSSRenderingBorders.cpp:2460:22
#7 nsCSSBorderRenderer::DrawDashedOrDottedCorner(mozilla::Side, mozilla::Corner) /src/layout/painting/nsCSSRenderingBorders.cpp:2395:7
#8 nsCSSBorderRenderer::DrawBorderSides(int) /src/layout/painting/nsCSSRenderingBorders.cpp
#9 nsCSSBorderRenderer::DrawBorders() /src/layout/painting/nsCSSRenderingBorders.cpp:3506:11
#10 nsCSSRendering::PaintBorderWithStyleBorder(nsPresContext*, gfxContext&, nsIFrame*, nsRect const&, nsRect const&, nsStyleBorder const&, nsStyleContext*, mozilla::PaintBorderFlags, mozilla::Sides) /src/layout/painting/nsCSSRendering.cpp:973:6
#11 nsCSSRendering::PaintBorder(nsPresContext*, gfxContext&, nsIFrame*, nsRect const&, nsRect const&, nsStyleContext*, mozilla::PaintBorderFlags, mozilla::Sides) /src/layout/painting/nsCSSRendering.cpp:646:12
#12 nsDisplayBorder::Paint(nsDisplayListBuilder*, gfxContext*) /src/layout/painting/nsDisplayList.cpp:5660:5
#13 mozilla::FrameLayerBuilder::PaintItems(nsTArray<mozilla::FrameLayerBuilder::ClippedDisplayItem>&, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const&, gfxContext*, nsDisplayListBuilder*, nsPresContext*, mozilla::gfx::IntPointTyped<mozilla::gfx::UnknownUnits> const&, float, float, int) /src/layout/painting/FrameLayerBuilder.cpp:6029:21
#14 mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*) /src/layout/painting/FrameLayerBuilder.cpp:6190:19
#15 mozilla::layers::ClientPaintedLayer::PaintThebes(nsTArray<mozilla::layers::ReadbackProcessor::Update>*) /src/gfx/layers/client/ClientPaintedLayer.cpp:158:5
#16 mozilla::layers::ClientPaintedLayer::RenderLayerWithReadback(mozilla::layers::ReadbackProcessor*) /src/gfx/layers/client/ClientPaintedLayer.cpp:314:3
#17 mozilla::layers::ClientContainerLayer::RenderLayer() /src/gfx/layers/client/ClientContainerLayer.h:58:29
#18 mozilla::layers::ClientContainerLayer::RenderLayer() /src/gfx/layers/client/ClientContainerLayer.h:58:29
#19 mozilla::layers::ClientLayerManager::EndTransactionInternal(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) /src/gfx/layers/client/ClientLayerManager.cpp:359:13
#20 mozilla::layers::ClientLayerManager::EndTransaction(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, mozilla::layers::DrawRegionClip, mozilla::gfx::IntRegionTyped<mozilla::gfx::UnknownUnits> const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags) /src/gfx/layers/client/ClientLayerManager.cpp:423:3
#21 nsDisplayList::PaintRoot(nsDisplayListBuilder*, gfxContext*, unsigned int) /src/layout/painting/nsDisplayList.cpp:2627:17
#22 nsLayoutUtils::PaintFrame(gfxContext*, nsIFrame*, nsRegion const&, unsigned int, nsDisplayListBuilderMode, nsLayoutUtils::PaintFrameFlags) /src/layout/base/nsLayoutUtils.cpp:3976:12
#23 mozilla::PresShell::Paint(nsView*, nsRegion const&, unsigned int) /src/layout/base/PresShell.cpp:6481:5
#24 nsViewManager::ProcessPendingUpdatesPaint(nsIWidget*) /src/view/nsViewManager.cpp:480:19
#25 nsViewManager::ProcessPendingUpdatesForView(nsView*, bool) /src/view/nsViewManager.cpp:412:33
#26 nsViewManager::ProcessPendingUpdates() /src/view/nsViewManager.cpp:1102:5
#27 nsRefreshDriver::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:2046:11
#28 mozilla::RefreshDriverTimer::TickRefreshDrivers(long, mozilla::TimeStamp, nsTArray<RefPtr<nsRefreshDriver> >&) /src/layout/base/nsRefreshDriver.cpp:306:7
#29 mozilla::RefreshDriverTimer::Tick(long, mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:328:5
#30 mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:769:5
#31 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver(mozilla::TimeStamp) /src/layout/base/nsRefreshDriver.cpp:682:35
#32 mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() /src/layout/base/nsRefreshDriver.cpp:528:20
#33 nsThread::ProcessNextEvent(bool, bool*) /src/xpcom/threads/nsThread.cpp:1040:14
#34 NS_ProcessNextEvent(nsIThread*, bool) /src/xpcom/threads/nsThreadUtils.cpp:517:10
#35 mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) /src/ipc/glue/MessagePump.cpp:97:21
#36 MessageLoop::RunInternal() /src/ipc/chromium/src/base/message_loop.cc:326:10
#37 MessageLoop::Run() /src/ipc/chromium/src/base/message_loop.cc:299:3
#38 nsBaseAppShell::Run() /src/widget/nsBaseAppShell.cpp:157:27
#39 nsAppStartup::Run() /src/toolkit/components/startup/nsAppStartup.cpp:288:30
#40 XREMain::XRE_mainRun() /src/toolkit/xre/nsAppRunner.cpp:4702:22
#41 XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4841:8
#42 XRE_main(int, char**, mozilla::BootstrapConfig const&) /src/toolkit/xre/nsAppRunner.cpp:4933:21
#43 do_main(int, char**, char**) /src/browser/app/nsBrowserApp.cpp:231:22
#44 main /src/browser/app/nsBrowserApp.cpp:304:16
#45 __libc_start_main /build/glibc-Cl5G7W/glibc-2.23/csu/../csu/libc-start.c:291
#46 _start (firefox+0x41f3d4)
Flags: in-testsuite?
Assignee: nobody → sotaro.ikeda.g
See Also: → 1394405
:tsmith, is the assertion failure could be reproduced with latest m-c? I could not reproduce the problem with latest m-c.
Flags: needinfo?(twsmith)
(In reply to Sotaro Ikeda [:sotaro] from comment #1)
> :tsmith, is the assertion failure could be reproduced with latest m-c?

I cannot reproduce it at the moment. This issue has come and gone in the past so if it has not been fixed I imagine it will be hit by fuzzers again in the future. I'll close it for now and open it if it comes back.
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(twsmith)
Resolution: --- → WORKSFORME
OK, thanks!
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: