summaryrefslogtreecommitdiff
path: root/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
diff options
context:
space:
mode:
authorYin-Chia Yeh <yinchiayeh@google.com>2019-03-14 14:21:01 -0700
committerYin-Chia Yeh <yinchiayeh@google.com>2019-03-14 14:21:01 -0700
commit965d9dd8216d15479172b901202f3152bc22b13d (patch)
tree2e6feda6ed7c9d21534ce0832010325534b6ccf8 /camera/device/3.4/default/ExternalCameraDeviceSession.cpp
parenteed0040e216d58bdaaa2daaa40eab29b0eabeaa8 (diff)
Camera: cleanup external camera HAL fence FD logic
Treat all non-negative integers as valid FD. Test: webcam smoke test Bug: N/A Change-Id: I5fd52c0d195d2d4b63d70d66f10bd2a3ea99985c
Diffstat (limited to 'camera/device/3.4/default/ExternalCameraDeviceSession.cpp')
-rw-r--r--camera/device/3.4/default/ExternalCameraDeviceSession.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/camera/device/3.4/default/ExternalCameraDeviceSession.cpp b/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
index 32da9681bf..dc5579ac67 100644
--- a/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
+++ b/camera/device/3.4/default/ExternalCameraDeviceSession.cpp
@@ -853,7 +853,7 @@ Status ExternalCameraDeviceSession::processCaptureResult(std::shared_ptr<HalRequ
result.outputBuffers[i].bufferId = req->buffers[i].bufferId;
if (req->buffers[i].fenceTimeout) {
result.outputBuffers[i].status = BufferStatus::ERROR;
- if (req->buffers[i].acquireFence > 0) {
+ if (req->buffers[i].acquireFence >= 0) {
native_handle_t* handle = native_handle_create(/*numFds*/1, /*numInts*/0);
handle->data[0] = req->buffers[i].acquireFence;
result.outputBuffers[i].releaseFence.setTo(handle, /*shouldOwn*/false);
@@ -862,7 +862,7 @@ Status ExternalCameraDeviceSession::processCaptureResult(std::shared_ptr<HalRequ
} else {
result.outputBuffers[i].status = BufferStatus::OK;
// TODO: refactor
- if (req->buffers[i].acquireFence > 0) {
+ if (req->buffers[i].acquireFence >= 0) {
native_handle_t* handle = native_handle_create(/*numFds*/1, /*numInts*/0);
handle->data[0] = req->buffers[i].acquireFence;
result.outputBuffers[i].releaseFence.setTo(handle, /*shouldOwn*/false);
@@ -1778,7 +1778,7 @@ int ExternalCameraDeviceSession::OutputThread::createJpegLocked(
/* Unlock the HAL jpeg code buffer */
int relFence = sHandleImporter.unlock(*(halBuf.bufPtr));
- if (relFence > 0) {
+ if (relFence >= 0) {
halBuf.acquireFence = relFence;
}
@@ -1882,7 +1882,7 @@ bool ExternalCameraDeviceSession::OutputThread::threadLoop() {
if (*(halBuf.bufPtr) == nullptr) {
ALOGW("%s: buffer for stream %d missing", __FUNCTION__, halBuf.streamId);
halBuf.fenceTimeout = true;
- } else if (halBuf.acquireFence != -1) {
+ } else if (halBuf.acquireFence >= 0) {
int ret = sync_wait(halBuf.acquireFence, kSyncWaitTimeoutMs);
if (ret) {
halBuf.fenceTimeout = true;
@@ -1957,7 +1957,7 @@ bool ExternalCameraDeviceSession::OutputThread::threadLoop() {
return onDeviceError("%s: format coversion failed!", __FUNCTION__);
}
int relFence = sHandleImporter.unlock(*(halBuf.bufPtr));
- if (relFence > 0) {
+ if (relFence >= 0) {
halBuf.acquireFence = relFence;
}
} break;