diff options
author | Dan Stoza <stoza@google.com> | 2015-04-23 02:17:42 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-04-23 02:17:42 +0000 |
commit | c7a3cd622846f8f29b46e4c5f5bcf14857d0f779 (patch) | |
tree | bd85ae4296b2b624fee88fa9fb1a2763cd01e6a8 /services | |
parent | 83e9f6e75e0c32efba8a337bcf9eb44cbab2346c (diff) | |
parent | 423b40f7bd004a8ab5bca887e3855cd20c6bcc28 (diff) | |
download | frameworks_native-c7a3cd622846f8f29b46e4c5f5bcf14857d0f779.zip frameworks_native-c7a3cd622846f8f29b46e4c5f5bcf14857d0f779.tar.gz frameworks_native-c7a3cd622846f8f29b46e4c5f5bcf14857d0f779.tar.bz2 |
am 423b40f7: am 368270fd: am de5c15b8: Merge "SF: Always perform sideband transactions"
* commit '423b40f7bd004a8ab5bca887e3855cd20c6bcc28':
SF: Always perform sideband transactions
Diffstat (limited to 'services')
-rw-r--r-- | services/surfaceflinger/Layer.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index 7bb7529..2944c63 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -918,7 +918,7 @@ uint32_t Layer::doTransaction(uint32_t flags) { const bool resizePending = (c.requested.w != c.active.w) || (c.requested.h != c.active.h); - if (resizePending) { + if (resizePending && mSidebandStream == NULL) { // don't let Layer::doTransaction update the drawing state // if we have a pending resize, unless we are in fixed-size mode. // the drawing state will be updated only once we receive a buffer @@ -927,6 +927,10 @@ uint32_t Layer::doTransaction(uint32_t flags) { // in particular, we want to make sure the clip (which is part // of the geometry state) is latched together with the size but is // latched immediately when no resizing is involved. + // + // If a sideband stream is attached, however, we want to skip this + // optimization so that transactions aren't missed when a buffer + // never arrives flags |= eDontUpdateGeometryState; } |