diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 678770523f85a..bc30738113d47 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -339,6 +339,7 @@ status_t OpenGLRenderer::invokeFunctors(Rect& dirty) { size_t count = mFunctors.size(); if (count > 0) { + interrupt(); SortedVector functors(mFunctors); mFunctors.clear(); @@ -365,10 +366,7 @@ status_t OpenGLRenderer::invokeFunctors(Rect& dirty) { mFunctors.add(f); } } - // protect against functors binding to other buffers - mCaches.unbindMeshBuffer(); - mCaches.unbindIndicesBuffer(); - mCaches.activeTexture(0); + resume(); } return result;