diff options
-rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 5 | ||||
-rw-r--r-- | libs/hwui/OpenGLRenderer.h | 3 |
2 files changed, 7 insertions, 1 deletions
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 @@ void OpenGLRenderer::setMatrix(SkMatrix* matrix) { } 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 @@ private: // Misc GLint mMaxTextureSize; + // Indentity matrix + const mat4 mIdentity; + friend class DisplayListRenderer; }; // class OpenGLRenderer |