зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1587210
. Always clear mInvalidRect. r=mstange
In the future mInvalidRect and some other state should move out of DIGroup and into a non-persistant struct that's only used during Group building. This will allow us to completely avoid errors like this. Differential Revision: https://phabricator.services.mozilla.com/D48706 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
e621c66d0b
Коммит
88c6d9a1dc
|
@ -731,7 +731,6 @@ struct DIGroup {
|
|||
}
|
||||
}
|
||||
mFonts = std::move(fonts);
|
||||
mInvalidRect.SetEmpty();
|
||||
aResources.SetBlobImageVisibleArea(
|
||||
mKey.value().second(),
|
||||
ViewAs<ImagePixel>(mVisibleRect, PixelCastJustification::LayerIsImage));
|
||||
|
@ -1217,6 +1216,8 @@ void Grouper::ConstructGroups(nsDisplayListBuilder* aDisplayListBuilder,
|
|||
aCommandBuilder->CreateOrRecycleWebRenderUserData<WebRenderGroupData>(
|
||||
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");
|
||||
|
|
Загрузка…
Ссылка в новой задаче