From aba88c6cbc3ef052e812ff012f8e220bcadb4119 Mon Sep 17 00:00:00 2001 From: Yin-Chia Yeh Date: Wed, 19 Jun 2019 11:51:48 -0700 Subject: [PATCH] Camera: fix unknown bufId issue It's legit to have bufId 0 in processCaptureResult with HAL buffer manager, but not for returnStreamBuffers. Test: the failed test can now pass Bug: 135565913 Change-Id: I05947bc159bb9ba00a670b98d4622f685b4ac760 --- .../functional/VtsHalCameraProviderV2_4TargetTest.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp index 200dd3f199..c94c825a57 100644 --- a/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp +++ b/camera/provider/2.4/vts/functional/VtsHalCameraProviderV2_4TargetTest.cpp @@ -1233,7 +1233,14 @@ bool CameraHidlTest::DeviceCb::processCaptureResultLocked(const CaptureResult& r } if (mUseHalBufManager) { - returnStreamBuffers(results.outputBuffers); + // Don't return buffers of bufId 0 (empty buffer) + std::vector buffers; + for (const auto& sb : results.outputBuffers) { + if (sb.bufferId != 0) { + buffers.push_back(sb); + } + } + returnStreamBuffers(buffers); } return notify; }