From 4ebf53f450227809f7fc04a828fd352afe25ec17 Mon Sep 17 00:00:00 2001 From: Eino-Ville Talvala Date: Wed, 24 May 2017 15:05:56 -0700 Subject: [PATCH] camera.device@3.2 wrapper: Close release fence FDs Freeing the native handle isn't enough; we need to close the fence FDs after sending them to the camera service, since that's the behavior that the legacy HAL interface requires. Test: Camera CTS continues to pass. Bug: 38482274 Change-Id: I879de566dcafecc1b899d79e68b38ea39b91a37e --- camera/device/3.2/default/CameraDeviceSession.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/camera/device/3.2/default/CameraDeviceSession.cpp b/camera/device/3.2/default/CameraDeviceSession.cpp index 61be82dcaf..bad406f8cc 100644 --- a/camera/device/3.2/default/CameraDeviceSession.cpp +++ b/camera/device/3.2/default/CameraDeviceSession.cpp @@ -403,12 +403,14 @@ void CameraDeviceSession::ResultBatcher::freeReleaseFences(hidl_vec( result.inputBuffer.releaseFence.getNativeHandle()); + native_handle_close(handle); native_handle_delete(handle); } for (auto& buf : result.outputBuffers) { if (buf.releaseFence.getNativeHandle() != nullptr) { native_handle_t* handle = const_cast( buf.releaseFence.getNativeHandle()); + native_handle_close(handle); native_handle_delete(handle); } }