Closed Bug 1584691 Opened 6 months ago Closed 6 months ago

Assertion failure: !LayerIsScrollbarTarget(ancestor, aScrollbar), at /gfx/layers/composite/AsyncCompositionManager.cpp:1334

Categories

(Core :: Panning and Zooming, defect, P1)

defect

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox-esr60 --- unaffected
firefox-esr68 --- unaffected
firefox69 --- unaffected
firefox70 --- unaffected
firefox71 --- fixed

People

(Reporter: bc, Assigned: botond)

References

(Regression, )

Details

(Keywords: assertion, regression, reproducible)

Attachments

(1 file)

  1. https://aura-ilmu.com/internet-program-software/

  2. Assert on load

Assertion failure: !LayerIsScrollbarTarget(ancestor, aScrollbar), at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:1334
#01: mozilla::layers::AsyncCompositionManager::ApplyAsyncContentTransformToTree(mozilla::layers::Layer*, bool*)::$_4::operator()(mozilla::layers::Layer*) const [gfx/layers/composite/AsyncCompositionManager.cpp:1275]
#02: mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer *, (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:914:7), (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:950:7)> [gfx/layers/TreeTraversal.h:0]
#03: mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer *, (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:914:7), (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:950:7)> [gfx/layers/TreeTraversal.h:141]
#04: mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer *, (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:914:7), (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:950:7)> [gfx/layers/TreeTraversal.h:141]
#05: mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer *, (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:914:7), (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:950:7)> [gfx/layers/TreeTraversal.h:141]
#06: mozilla::layers::ForEachNode<mozilla::layers::ForwardIterator, mozilla::layers::Layer *, (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:914:7), (lambda at /builds/worker/workspace/build/src/gfx/layers/composite/AsyncCompositionManager.cpp:950:7)> [gfx/layers/TreeTraversal.h:141]
#07: mozilla::layers::AsyncCompositionManager::ApplyAsyncContentTransformToTree(mozilla::layers::Layer*, bool*) [gfx/layers/composite/AsyncCompositionManager.cpp:1277]
#08: mozilla::layers::AsyncCompositionManager::TransformShadowTree(mozilla::TimeStamp, mozilla::BaseTimeDuration<mozilla::TimeDurationValueCalculator>, mozilla::layers::CompositorBridgeParentBase::TransformsToSkip) [gfx/layers/composite/AsyncCompositionManager.cpp:0]
#09: mozilla::layers::CompositorBridgeParent::CompositeToTarget(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::gfx::DrawTarget*, mozilla::gfx::IntRectTyped<mozilla::gfx::UnknownUnits> const*) [gfx/layers/ipc/CompositorBridgeParent.cpp:1009]
#10: mozilla::layers::CompositorVsyncScheduler::Composite(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp) [gfx/layers/ipc/CompositorVsyncScheduler.cpp:252]
#11: mozilla::detail::RunnableMethodImpl<mozilla::layers::CompositorVsyncScheduler*, void (mozilla::layers::CompositorVsyncScheduler::*)(mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp), true, (mozilla::RunnableKind)1, mozilla::layers::BaseTransactionId<mozilla::VsyncIdType>, mozilla::TimeStamp>::Run() [xpcom/threads/nsThreadUtils.h:1179]

Windows and Linux Nightly. Not reproducible with quick check using Beta on Linux. Regression? Bughunter has only recently begun to see this.

This is a regression from the fourth patch in bug 1577859. I'll investigate.

Assignee: nobody → botond
Has Regression Range: --- → yes
Component: Graphics: Layers → Panning and Zooming
Priority: -- → P1
Regressed by: 1577859

What's happening here is that the RCD-RSF scroll metadata can still go on a container layer ancestor of the scrollbar layers if there are no painted layers for the scrolled content and we take this fallback codepath.

I guess that means we can't remove support for scrollbar layers being descendants of the layer with the corresponding scroll metadata, from APZ.

This layer structure can still occur in cases where we place the RCD-RSF
scroll metadata on the root layer as a fallback.

(In reply to Botond Ballo [:botond] from comment #2)

I guess that means we can't remove support for scrollbar layers being descendants of the layer with the corresponding scroll metadata, from APZ.

We can still eventually remove this codepath, but only after desktop zooming ships, and the ability to disable desktop zooming is removed. At that point, the fallback metadata will be placed on the async zoom container, which is a sibling of the scrollbar layers.

Pushed by bballo@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b08fca6e85e7
Reinstate support for scrollbar layers that are descendants of the scrolled content. r=tnikkel
Status: NEW → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
Flags: qe-verify+

Hi, I tried to reproduce this issue but I might be missing some extra steps, the url provided https://aura-ilmu.com/internet-program-software/ seems to return 404 not found as for the assertion failure, I'm not sure where I can catch that, Browser console ? Terminal ? can you please provide some extra steps ?

Flags: needinfo?(bob)

I only saw this on this one url and it appears to have been removed. Sorry I can't help more.

Flags: needinfo?(bob)

How should we proceed with this issue since the test page is no longer available and we cannot confirm the fix ? @botond do you have any other test page we might use to verify this fix ?

Flags: needinfo?(botond)

I'm afraid I don't.

I would suggest we consider the matter closed until/unless someone else runs into an instance of this assertion again.

Flags: needinfo?(botond)
You need to log in before you can comment on or make changes to this bug.