From 1df8c345854155cbbcb9f80de9d12d66ea70ac08 Mon Sep 17 00:00:00 2001 From: Jamie Gennis Date: Thu, 20 Dec 2012 14:05:45 -0800 Subject: libgui: disallow NULL Fence pointers This change eliminates the uses of a NULL sp indicating that no waiting is required. Instead we use a non-NULL but invalid Fence object for which the wait methods will return immediately. Bug: 7892871 Change-Id: I5360aebe3090422ef6920d56c99fc4eedc642e48 --- libs/gui/SurfaceTextureClient.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libs/gui/SurfaceTextureClient.cpp') diff --git a/libs/gui/SurfaceTextureClient.cpp b/libs/gui/SurfaceTextureClient.cpp index c015b812f0..5ed2e38150 100644 --- a/libs/gui/SurfaceTextureClient.cpp +++ b/libs/gui/SurfaceTextureClient.cpp @@ -216,7 +216,7 @@ int SurfaceTextureClient::dequeueBuffer(android_native_buffer_t** buffer, } } - if (fence.get()) { + if (fence->isValid()) { *fenceFd = fence->dup(); if (*fenceFd == -1) { ALOGE("dequeueBuffer: error duping fence: %d", errno); @@ -241,7 +241,7 @@ int SurfaceTextureClient::cancelBuffer(android_native_buffer_t* buffer, if (i < 0) { return i; } - sp fence(fenceFd >= 0 ? new Fence(fenceFd) : NULL); + sp fence(fenceFd >= 0 ? new Fence(fenceFd) : Fence::NO_FENCE); mSurfaceTexture->cancelBuffer(i, fence); return OK; } @@ -287,7 +287,7 @@ int SurfaceTextureClient::queueBuffer(android_native_buffer_t* buffer, int fence Rect crop; mCrop.intersect(Rect(buffer->width, buffer->height), &crop); - sp fence(fenceFd >= 0 ? new Fence(fenceFd) : NULL); + sp fence(fenceFd >= 0 ? new Fence(fenceFd) : Fence::NO_FENCE); IGraphicBufferProducer::QueueBufferOutput output; IGraphicBufferProducer::QueueBufferInput input(timestamp, crop, mScalingMode, mTransform, fence); -- cgit v1.2.3-59-g8ed1b