summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOwen Lin <owenlin@google.com>2012-10-07 23:21:19 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2012-10-07 23:21:19 -0700
commitc1fc8765083b569719c3d4f8766c2de7b2210d6f (patch)
treea5f45d1cef9e927f0809325f9333b3ff29ab9a3f
parentfe4b9b715577aa4c9515f03407bf04cd2af0df2d (diff)
parent4e82fcb4fecd90087b322f4ad0a40b99d83160ad (diff)
downloadandroid_packages_apps_Snap-c1fc8765083b569719c3d4f8766c2de7b2210d6f.tar.gz
android_packages_apps_Snap-c1fc8765083b569719c3d4f8766c2de7b2210d6f.tar.bz2
android_packages_apps_Snap-c1fc8765083b569719c3d4f8766c2de7b2210d6f.zip
am ed8c8810: Merge "Fix ANR in creating the fallback animation." into gb-ub-photos-arches
* commit 'ed8c88102153dd7dca8458d7f0a9b81937c58023': Fix ANR in creating the fallback animation.
-rw-r--r--src/com/android/gallery3d/ui/GLRootView.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/com/android/gallery3d/ui/GLRootView.java b/src/com/android/gallery3d/ui/GLRootView.java
index 390d58737..dbdfb6716 100644
--- a/src/com/android/gallery3d/ui/GLRootView.java
+++ b/src/com/android/gallery3d/ui/GLRootView.java
@@ -465,14 +465,15 @@ public class GLRootView extends GLSurfaceView
listener = mIdleListeners.removeFirst();
}
mRenderLock.lock();
+ boolean keepInQueue;
try {
- if (!listener.onGLIdle(mCanvas, mRenderRequested)) return;
+ keepInQueue = listener.onGLIdle(mCanvas, mRenderRequested);
} finally {
mRenderLock.unlock();
}
synchronized (mIdleListeners) {
- mIdleListeners.addLast(listener);
- if (!mRenderRequested) enable();
+ if (keepInQueue) mIdleListeners.addLast(listener);
+ if (!mRenderRequested && !mIdleListeners.isEmpty()) enable();
}
}