[libcamera-devel] [PATCH] android: CameraBuffer: Mark as invalid if cros::CameraBufferManager::Register() fails

Hirokazu Honda hiroh at chromium.org
Thu Apr 1 17:29:26 CEST 2021


cros::CameraBufferManager::Register() fails if a buffer handle
is invalid. We should mark CameraBuffer as invalid on the failure
of Register().

Signed-off-by: Hirokazu Honda <hiroh at chromium.org>
---
 src/android/mm/cros_camera_buffer.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/android/mm/cros_camera_buffer.cpp b/src/android/mm/cros_camera_buffer.cpp
index 7df4f47c..d9fd43b7 100644
--- a/src/android/mm/cros_camera_buffer.cpp
+++ b/src/android/mm/cros_camera_buffer.cpp
@@ -53,7 +53,11 @@ CameraBuffer::Private::Private(CameraBuffer *cameraBuffer,
 {
 	bufferManager_ = cros::CameraBufferManager::GetInstance();
 
-	bufferManager_->Register(camera3Buffer);
+	int ret = bufferManager_->Register(camera3Buffer);
+	if (ret) {
+		LOG(HAL, Error) << "Failed registering a buffer: " << ret;
+		return;
+	}
 
 	numPlanes_ = bufferManager_->GetNumPlanes(camera3Buffer);
 	switch (numPlanes_) {
-- 
2.31.0.291.g576ba9dcdaf-goog



More information about the libcamera-devel mailing list