From b5800a6de2371cade827f4b8820f530877fad32b Mon Sep 17 00:00:00 2001 From: Matt Woodrow Date: Mon, 27 Nov 2017 16:47:28 +1300 Subject: [PATCH] Bug 1420312 - Followup to only mark frame as modified during retained building, since otherwise it won't be restored. --HG-- extra : rebase_source : 675d7b40da6c41f2b2bc1513bee72e3361cbcd33 --- layout/generic/nsFrame.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/layout/generic/nsFrame.cpp b/layout/generic/nsFrame.cpp index a67354c05db4..8d26aa422ade 100644 --- a/layout/generic/nsFrame.cpp +++ b/layout/generic/nsFrame.cpp @@ -2758,8 +2758,10 @@ nsIFrame::BuildDisplayListForStackingContext(nsDisplayListBuilder* aBuilder, // We rebuild everything within preserve-3d and don't try // to retain, so override the dirty rect now. - dirtyRect = visibleRect; - aBuilder->MarkFrameModifiedDuringBuilding(this); + if (aBuilder->IsRetainingDisplayList()) { + dirtyRect = visibleRect; + aBuilder->MarkFrameModifiedDuringBuilding(this); + } } bool inTransform = aBuilder->IsInTransform();