diff options
author | Chet Haase <chet@google.com> | 2013-04-10 17:48:53 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-04-10 17:49:56 +0000 |
commit | dacd47516321d263efa7489b5b9bd7d8e1714332 (patch) | |
tree | e317b9d4f8d513e1730b354dacb5ef42dd015a81 /libs | |
parent | 8f980e1a5ae99d5e34aaef6aac7f38a7d0038631 (diff) | |
parent | 58d110afa0e0f3843d72617046185a3c2d48dca9 (diff) | |
download | frameworks_base-dacd47516321d263efa7489b5b9bd7d8e1714332.zip frameworks_base-dacd47516321d263efa7489b5b9bd7d8e1714332.tar.gz frameworks_base-dacd47516321d263efa7489b5b9bd7d8e1714332.tar.bz2 |
Merge "Fix Contacts animation jank" into jb-mr2-dev
Diffstat (limited to 'libs')
-rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 3730017..e18d922 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -1905,14 +1905,15 @@ void OpenGLRenderer::finishDrawTexture() { status_t OpenGLRenderer::drawDisplayList(DisplayList* displayList, Rect& dirty, int32_t replayFlags) { + status_t status; // All the usual checks and setup operations (quickReject, setupDraw, etc.) // will be performed by the display list itself if (displayList && displayList->isRenderable()) { if (CC_UNLIKELY(mCaches.drawDeferDisabled)) { - startFrame(); + status = startFrame(); ReplayStateStruct replayStruct(*this, dirty, replayFlags); displayList->replay(replayStruct, 0); - return replayStruct.mDrawGlStatus; + return status | replayStruct.mDrawGlStatus; } DeferredDisplayList deferredList; @@ -1920,9 +1921,9 @@ status_t OpenGLRenderer::drawDisplayList(DisplayList* displayList, Rect& dirty, displayList->defer(deferStruct, 0); flushLayers(); - startFrame(); + status = startFrame(); - return deferredList.flush(*this, dirty); + return status | deferredList.flush(*this, dirty); } return DrawGlInfo::kStatusDone; |