From fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:14:29 +0200 Subject: Merging upstream version 125.0.1. Signed-off-by: Daniel Baumann --- layout/painting/RetainedDisplayListBuilder.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'layout/painting/RetainedDisplayListBuilder.cpp') diff --git a/layout/painting/RetainedDisplayListBuilder.cpp b/layout/painting/RetainedDisplayListBuilder.cpp index bb3a896b9a..ca8f37a252 100644 --- a/layout/painting/RetainedDisplayListBuilder.cpp +++ b/layout/painting/RetainedDisplayListBuilder.cpp @@ -523,6 +523,17 @@ class MergeState { // current ASR, which gets reset during RestoreState(), so we always need // to run it again. aOutItem->UpdateBounds(mBuilder->Builder()); + + if (aOutItem->GetType() == DisplayItemType::TYPE_TRANSFORM) { + MOZ_ASSERT(!aNewItem || + aNewItem->GetType() == DisplayItemType::TYPE_TRANSFORM); + MOZ_ASSERT(aOldItem->GetType() == DisplayItemType::TYPE_TRANSFORM); + static_cast(aOutItem)->SetContainsASRs( + static_cast(aOldItem)->GetContainsASRs() || + (aNewItem + ? static_cast(aNewItem)->GetContainsASRs() + : false)); + } } bool ShouldUseNewItem(nsDisplayItem* aNewItem) { -- cgit v1.2.3