diff options
author | Mathias Agopian <mathias@google.com> | 2010-12-15 14:41:59 -0800 |
---|---|---|
committer | Mathias Agopian <mathias@google.com> | 2011-01-25 14:18:29 -0800 |
commit | 84c6f5a44c431a36a9e4395a7e23ab26480ba689 (patch) | |
tree | 659eacdd03cc6e2b5d46c43db2333a4289faef43 /services | |
parent | 728d849fc92bbf9b3bfd8c3903344ff58f3d5d06 (diff) | |
download | frameworks_base-84c6f5a44c431a36a9e4395a7e23ab26480ba689.zip frameworks_base-84c6f5a44c431a36a9e4395a7e23ab26480ba689.tar.gz frameworks_base-84c6f5a44c431a36a9e4395a7e23ab26480ba689.tar.bz2 |
workaround [3201922] display not on: log full of gralloc errors (DO NOT MERGE)
we make sure to call compositionComplete after everytime we do
composition with the GPU (even for the screenshot case), which is
where the buffer locks are released.
Change-Id: I450430d1e4d1ee9ce1023970642378c42cdcfa4c
Diffstat (limited to 'services')
-rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index af0f95a..664e5ad 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -406,6 +406,7 @@ bool SurfaceFlinger::threadLoop() logger.log(GraphicLog::SF_REPAINT_DONE, index); } else { // pretend we did the post + hw.compositionComplete(); unlockClients(); usleep(16667); // 60 fps period } @@ -2172,6 +2173,9 @@ status_t SurfaceFlinger::captureScreenImplLocked(DisplayID dpy, glBindFramebufferOES(GL_FRAMEBUFFER_OES, 0); glDeleteRenderbuffersOES(1, &tname); glDeleteFramebuffersOES(1, &name); + + hw.compositionComplete(); + return result; } |