summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2011-06-22 13:42:34 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-06-22 13:42:34 -0700
commit06e87407f7b7c5710070c24b816d3234ffa3b2a5 (patch)
tree89716ea4d3049e0f6da750c4492d8a6ecacce05d /core
parent86b569020bbda1733b2e8134cc4632ab4140b82d (diff)
parent0bc6eb30bc09b4c49193229cf3c0de28341be6f4 (diff)
downloadframeworks_base-06e87407f7b7c5710070c24b816d3234ffa3b2a5.zip
frameworks_base-06e87407f7b7c5710070c24b816d3234ffa3b2a5.tar.gz
frameworks_base-06e87407f7b7c5710070c24b816d3234ffa3b2a5.tar.bz2
Merge "Fix the issue where TextureView stuck if the producer side is too fast."
Diffstat (limited to 'core')
-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 e301e44..22d3c6f 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();