diff --git a/gfx/layers/wr/WebRenderCommandBuilder.cpp b/gfx/layers/wr/WebRenderCommandBuilder.cpp index 3d401ec5d3d4..a92ad46dfa81 100644 --- a/gfx/layers/wr/WebRenderCommandBuilder.cpp +++ b/gfx/layers/wr/WebRenderCommandBuilder.cpp @@ -731,7 +731,6 @@ struct DIGroup { } } mFonts = std::move(fonts); - mInvalidRect.SetEmpty(); aResources.SetBlobImageVisibleArea( mKey.value().second(), ViewAs(mVisibleRect, PixelCastJustification::LayerIsImage)); @@ -1217,6 +1216,8 @@ void Grouper::ConstructGroups(nsDisplayListBuilder* aDisplayListBuilder, aCommandBuilder->CreateOrRecycleWebRenderUserData( item, aBuilder.GetRenderRoot()); + groupData->mFollowingGroup.mInvalidRect.SetEmpty(); + // Initialize groupData->mFollowingGroup with data from currentGroup. // We want to copy out this information before calling EndGroup because // EndGroup will set mLastVisibleRect depending on whether @@ -1481,6 +1482,8 @@ void WebRenderCommandBuilder::DoGroupingForDisplayList( GP("Inherrited scale %f %f\n", scale.width, scale.height); GP("Bounds: %d %d %d %d vs %d %d %d %d\n", p.x, p.y, p.width, p.height, q.x, q.y, q.width, q.height); + + group.mInvalidRect.SetEmpty(); if (group.mAppUnitsPerDevPixel != appUnitsPerDevPixel || group.mScale != scale || group.mResidualOffset != residualOffset) { GP("Property change. Deleting blob\n");