diff --git a/webrender/src/util.rs b/webrender/src/util.rs index 780703a45d..7d4245b427 100644 --- a/webrender/src/util.rs +++ b/webrender/src/util.rs @@ -97,9 +97,12 @@ impl MatrixHelpers for TypedTransform3D { } fn is_simple_translation(&self) -> bool { - if self.m11 != 1. || self.m22 != 1. || self.m33 != 1. { + if (self.m11 - 1.0).abs() > NEARLY_ZERO || + (self.m22 - 1.0).abs() > NEARLY_ZERO || + (self.m33 - 1.0).abs() > NEARLY_ZERO { return false; } + self.m12.abs() < NEARLY_ZERO && self.m13.abs() < NEARLY_ZERO && self.m14.abs() < NEARLY_ZERO && self.m21.abs() < NEARLY_ZERO && self.m23.abs() < NEARLY_ZERO && self.m24.abs() < NEARLY_ZERO && diff --git a/wrench/reftests/transforms/screen-space-blit.png b/wrench/reftests/transforms/screen-space-blit.png index 0ce39413da..16ba2ce048 100644 Binary files a/wrench/reftests/transforms/screen-space-blit.png and b/wrench/reftests/transforms/screen-space-blit.png differ