Bug 1422403. Avoid float->integer->float conversion in ToRelativeLayoutRect. r=kats draft
authorJeff Muizelaar <jmuizelaar@mozilla.com>
Fri, 01 Dec 2017 15:46:26 -0500
changeset 706407 4fa6204ac8b59db38b97b4fe6666f4c89ec65c69
parent 706131 bdfdf0fa188910163d001272cc535f1b497431a1
child 706521 368ac713b862ebbcc0b8bc4050820c6c6f2ce78f
push id91786
push userbmo:jmuizelaar@mozilla.com
push dateFri, 01 Dec 2017 20:48:26 +0000
reviewerskats
bugs1422403
milestone59.0a1
Bug 1422403. Avoid float->integer->float conversion in ToRelativeLayoutRect. r=kats RoundedToInt converts to ints but we want floats. MozReview-Commit-ID: 76DtPRc8hnp
gfx/layers/wr/StackingContextHelper.cpp
--- a/gfx/layers/wr/StackingContextHelper.cpp
+++ b/gfx/layers/wr/StackingContextHelper.cpp
@@ -59,13 +59,15 @@ StackingContextHelper::~StackingContextH
   if (mBuilder) {
     mBuilder->PopStackingContext();
   }
 }
 
 wr::LayoutRect
 StackingContextHelper::ToRelativeLayoutRect(const LayoutDeviceRect& aRect) const
 {
-  return wr::ToLayoutRect(RoundedToInt(aRect - mOrigin));
+  auto rect = aRect - mOrigin;
+  rect.Round();
+  return wr::ToLayoutRect(rect);
 }
 
 } // namespace layers
 } // namespace mozilla