diff options
Diffstat (limited to 'core/java/android/view/ViewRootImpl.java')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 0506f30d04b8..b2e53ed78e68 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -3305,8 +3305,11 @@ public final class ViewRootImpl implements ViewParent, } useAsyncReport = true; - mAttachInfo.mThreadedRenderer.draw(mView, mAttachInfo, this, mNextRtFrameCallback); + + // draw(...) might invoke post-draw, which might register the next callback already. + final FrameDrawingCallback callback = mNextRtFrameCallback; mNextRtFrameCallback = null; + mAttachInfo.mThreadedRenderer.draw(mView, mAttachInfo, this, callback); } else { // If we get here with a disabled & requested hardware renderer, something went // wrong (an invalidate posted right before we destroyed the hardware surface |
