summaryrefslogtreecommitdiff
path: root/libs/gui/BufferQueueProducer.cpp
diff options
context:
space:
mode:
author Jesse Hall <jessehall@google.com> 2014-10-20 14:17:18 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2014-10-20 14:17:18 +0000
commita069e8532ba272ac5b935e332e426a3dacf827fc (patch)
tree3ab194a81fc26226632314e89a401bf99e635672 /libs/gui/BufferQueueProducer.cpp
parent899891ec95c0581d35f47db7bdea75bd49fdca1b (diff)
parent649bafb7ba2c3204295bc3451ff7af7e28e714ed (diff)
am 649bafb7: Merge "bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE)" into lmp-dev
* commit '649bafb7ba2c3204295bc3451ff7af7e28e714ed': bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE)
Diffstat (limited to 'libs/gui/BufferQueueProducer.cpp')
-rw-r--r--libs/gui/BufferQueueProducer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/gui/BufferQueueProducer.cpp b/libs/gui/BufferQueueProducer.cpp
index 03bd4fd5ba..284ddb2bf4 100644
--- a/libs/gui/BufferQueueProducer.cpp
+++ b/libs/gui/BufferQueueProducer.cpp
@@ -523,7 +523,12 @@ status_t BufferQueueProducer::queueBuffer(int slot,
if (fence == NULL) {
BQ_LOGE("queueBuffer: fence is NULL");
- return BAD_VALUE;
+ // Temporary workaround for b/17946343: soldier-on instead of returning an error. This
+ // prevents the client from dying, at the risk of visible corruption due to hwcomposer
+ // reading the buffer before the producer is done rendering it. Unless the buffer is the
+ // last frame of an animation, the corruption will be transient.
+ fence = Fence::NO_FENCE;
+ // return BAD_VALUE;
}
switch (scalingMode) {