Bug 1450249. blob-invalidation: Round the bounds. r=mstange
This fixes a number of reftest failures.
--- a/gfx/layers/wr/WebRenderCommandBuilder.cpp
+++ b/gfx/layers/wr/WebRenderCommandBuilder.cpp
@@ -530,17 +530,20 @@ struct DIGroup
InvalidateRect(data->mRect);
iter.Remove();
delete data;
} else {
data->mUsed = false;
}
}
+ // Round the bounds in a way that matches the existing fallback code
LayoutDeviceRect bounds = LayoutDeviceRect::FromAppUnits(mGroupBounds, aGrouper->mAppUnitsPerDevPixel);
+ bounds = LayoutDeviceRect(RoundedToInt(bounds));
+
IntSize size = mGroupBounds.Size().ScaleToNearestPixels(mScale.width, mScale.height, aGrouper->mAppUnitsPerDevPixel);
if (mInvalidRect.IsEmpty()) {
GP("Not repainting group because it's empty\n");
GP("End EndGroup\n");
if (mKey) {
PushImage(aBuilder, bounds);
}