From c5c5a14c06de249d8e0445fd24699e1d9aa04549 Mon Sep 17 00:00:00 2001 From: Jesse Hall Date: Mon, 2 Jul 2012 16:49:28 -0700 Subject: Only set acquire fences on overlay layers Change-Id: I08e8173f83580de5a4e43a0ba5ea03e5ec6e8782 --- services/surfaceflinger/Layer.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'services/surfaceflinger/Layer.cpp') diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index 5b9327dd61..0d1cb45bb3 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -300,20 +300,21 @@ void Layer::setPerFrameData(HWComposer::HWCLayerInterface& layer) { // NOTE: buffer can be NULL if the client never drew into this // layer yet, or if we ran out of memory layer.setBuffer(buffer); +} +void Layer::setAcquireFence(HWComposer::HWCLayerInterface& layer) { + int fenceFd = -1; if (mNeedHwcFence) { sp fence = mSurfaceTexture->getCurrentFence(); if (fence.get()) { - int fenceFd = fence->dup(); + fenceFd = fence->dup(); if (fenceFd == -1) { ALOGW("failed to dup layer fence, skipping sync: %d", errno); } - layer.setAcquireFenceFd(fenceFd); } mNeedHwcFence = false; - } else { - layer.setAcquireFenceFd(-1); } + layer.setAcquireFenceFd(fenceFd); } void Layer::onDraw(const DisplayHardware& hw, const Region& clip) const -- cgit v1.2.3-59-g8ed1b