summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/jni/android_view_GLES20Canvas.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/core/jni/android_view_GLES20Canvas.cpp b/core/jni/android_view_GLES20Canvas.cpp
index e301e44c04bf..22d3c6f44494 100644
--- a/core/jni/android_view_GLES20Canvas.cpp
+++ b/core/jni/android_view_GLES20Canvas.cpp
@@ -649,7 +649,8 @@ static void android_view_GLES20Canvas_updateTextureLayer(JNIEnv* env, jobject cl
float transform[16];
sp<SurfaceTexture> surfaceTexture(SurfaceTexture_getSurfaceTexture(env, surface));
- surfaceTexture->updateTexImage();
+ while (surfaceTexture->getQueuedCount() > 0)
+ surfaceTexture->updateTexImage();
surfaceTexture->getTransformMatrix(transform);
GLenum renderTarget = surfaceTexture->getCurrentTextureTarget();