Return identity matrix when rendering in an FBO.
Change-Id: I57438e745b30c8cfe16c269f3cafcd719049d705
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 92875b1..d81760d 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -585,7 +585,10 @@
}
const float* OpenGLRenderer::getMatrix() const {
- return &mSnapshot->transform->data[0];
+ if (mSnapshot->fbo != 0) {
+ return &mSnapshot->transform->data[0];
+ }
+ return &mIdentity.data[0];
}
void OpenGLRenderer::getMatrix(SkMatrix* matrix) {
diff --git a/libs/hwui/OpenGLRenderer.h b/libs/hwui/OpenGLRenderer.h
index f8828e2..423614b 100644
--- a/libs/hwui/OpenGLRenderer.h
+++ b/libs/hwui/OpenGLRenderer.h
@@ -432,6 +432,9 @@
// Misc
GLint mMaxTextureSize;
+ // Indentity matrix
+ const mat4 mIdentity;
+
friend class DisplayListRenderer;
}; // class OpenGLRenderer