Index: cc/gl_renderer.cc |
diff --git a/cc/gl_renderer.cc b/cc/gl_renderer.cc |
index bb4ec4d3ee99d55d33be2886d435eee999f986cd..a8e8e6bf448e795db8e99f701d95a52a44c52be6 100644 |
--- a/cc/gl_renderer.cc |
+++ b/cc/gl_renderer.cc |
@@ -526,10 +526,10 @@ void GLRenderer::drawRenderPassQuad(DrawingFrame& frame, const RenderPassDrawQua |
gfx::Transform contentsDeviceTransform = MathUtil::to2dTransform(frame.windowMatrix * frame.projectionMatrix * quadRectMatrix); |
// Can only draw surface if device matrix is invertible. |
- if (!contentsDeviceTransform.IsInvertible()) |
+ gfx::Transform contentsDeviceTransformInverse(gfx::Transform::kSkipInitialization); |
+ if (!contentsDeviceTransform.GetInverse(&contentsDeviceTransformInverse)) |
return; |
- gfx::Transform contentsDeviceTransformInverse = MathUtil::inverse(contentsDeviceTransform); |
scoped_ptr<ScopedResource> backgroundTexture = drawBackgroundFilters( |
frame, quad, renderPass->background_filters, |
contentsDeviceTransform, contentsDeviceTransformInverse); |
@@ -867,8 +867,9 @@ void GLRenderer::drawTileQuad(const DrawingFrame& frame, const TileDrawQuad* qua |
LayerQuad deviceQuad(leftEdge, topEdge, rightEdge, bottomEdge); |
// Map device space quad to local space. deviceTransform has no 3d component since it was generated with to2dTransform() so we don't need to project. |
- gfx::Transform deviceTransformInverse = MathUtil::inverse(deviceTransform); |
- localQuad = MathUtil::mapQuad(deviceTransformInverse, deviceQuad.ToQuadF(), clipped); |
+ gfx::Transform inverseDeviceTransform(gfx::Transform::kSkipInitialization); |
+ deviceTransform.GetInverse(&inverseDeviceTransform); |
danakj
2012/12/19 05:23:06
We checked deviceTransform.IsInvertible way up nea
|
+ localQuad = MathUtil::mapQuad(inverseDeviceTransform, deviceQuad.ToQuadF(), clipped); |
// We should not DCHECK(!clipped) here, because anti-aliasing inflation may cause deviceQuad to become |
// clipped. To our knowledge this scenario does not need to be handled differently than the unclipped case. |