diff options
author | 2010-07-30 11:36:12 -0700 | |
---|---|---|
committer | 2010-07-30 11:40:21 -0700 | |
commit | b82da65cb1601be504241f36778395cd6cb9f87b (patch) | |
tree | 19fc51fb41e806817a4895212b8111fa9131af04 /libs/hwui/OpenGLRenderer.cpp | |
parent | b422107d1d599e5d43cc47cd7e1342976b6b5b1a (diff) |
Fix improper clipping after a save()
Change-Id: I13426a67f20d77e2710bd500d82884098f4be97c
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
-rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 3c36f954947f..cc8e6bc60b23 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -177,7 +177,7 @@ void OpenGLRenderer::setViewport(int width, int height) { } void OpenGLRenderer::prepare() { - mSnapshot = mFirstSnapshot; + mSnapshot = new Snapshot(mFirstSnapshot); mSaveCount = 0; glDisable(GL_SCISSOR_TEST); @@ -188,7 +188,7 @@ void OpenGLRenderer::prepare() { glEnable(GL_SCISSOR_TEST); glScissor(0, 0, mWidth, mHeight); - mSnapshot->clipRect.set(0.0f, 0.0f, mWidth, mHeight); + mSnapshot->setClip(0.0f, 0.0f, mWidth, mHeight); } /////////////////////////////////////////////////////////////////////////////// @@ -569,6 +569,7 @@ void OpenGLRenderer::drawText(const char* text, int bytesCount, int count, chooseBlending(true, mode); bindTexture(mFontRenderer.getTexture(), GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE, 0); + glUniform1i(mCurrentProgram->getUniform("sampler"), 0); int texCoordsSlot = mCurrentProgram->getAttrib("texCoords"); glEnableVertexAttribArray(texCoordsSlot); |