libcamera/src/android
Hirokazu Honda d1007485e4 android: camera_device: Fix crash in calling CameraDevice::close()
The problem is happening because we seem to add a CameraStream
associated buffer (depending on the CameraStream::Type) to the Request,
in CameraDevice::processCaptureRequest().

However, when the camera stops, all the current buffers are marked with
FrameMetadata::FrameCancelled and proceed to completion. But the buffer
associated with the CameraStream (that was previously added to the
request) has now been cleared out with a part of streams_.clear(), even
before the camera stop() has been invoked. Any access to those request
buffers after they have been cleared, will result in a crash.

Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
2021-10-12 15:25:35 +01:00
..
cros android: cros: Simplify integration 2021-06-25 16:09:46 +01:00
data android: nautilus: Add camera HAL configuration 2021-08-04 09:03:37 +05:30
jpeg android: jpeg: Rectify variable naming style. 2021-09-21 11:51:56 +05:30
metadata android: metadata: Add SPDX tag 2019-08-12 10:34:13 +02:00
mm android: mm: cros_camera_buffer: Log failure error on cleanup 2021-09-09 11:44:30 +05:30
yuv android: yuv: Remove CameraDevice forward-declare 2021-09-21 11:51:24 +05:30
camera3_hal.cpp libcamera/base: Move extended base functionality 2021-06-25 16:11:08 +01:00
camera_buffer.h android: camera_buffer: Add stride/offset/size function 2021-08-27 00:52:32 +03:00
camera_capabilities.cpp android: Fix generation of thumbnail for EXIF data 2021-09-27 22:25:05 +05:30
camera_capabilities.h android: Refuse Manual template if not supported 2021-08-31 12:09:35 +02:00
camera_device.cpp android: camera_device: Fix crash in calling CameraDevice::close() 2021-10-12 15:25:35 +01:00
camera_device.h android: camera_device: Send capture results by inspecting the queue 2021-09-30 18:28:36 +05:30
camera_hal_config.cpp libcamera: base: extensible: Pass private pointer as unique_ptr<> 2021-08-16 23:57:27 +03:00
camera_hal_config.h libcamera/base: Move class helpers to the base library 2021-06-25 16:11:03 +01:00
camera_hal_manager.cpp android: Override camera as "Internal" provided found in HAL config 2021-08-04 09:03:33 +05:30
camera_hal_manager.h android: Disable copy and move for CameraHalManager 2021-07-06 19:58:36 +03:00
camera_metadata.cpp android: metadata: Add hasEntry and entryContains 2021-08-02 18:07:19 +09:00
camera_metadata.h android: metadata: Fix addEntry template type 2021-08-02 18:07:22 +09:00
camera_ops.cpp android: Implement flush() camera operation 2021-06-14 12:26:28 +02:00
camera_ops.h android: Remove internal thread 2020-02-13 13:23:23 +02:00
camera_stream.cpp android: camera_stream: Fix error message for buffer creation 2021-10-10 00:08:48 +05:30
camera_stream.h android: Wait on fences in CameraStream::process() 2021-09-29 20:29:07 +02:00
camera_worker.cpp android: camera_worker: Use Camera3RequestDescriptor as cookie 2021-09-30 18:28:36 +05:30
camera_worker.h android: camera_worker: Use Camera3RequestDescriptor as cookie 2021-09-30 18:28:36 +05:30
meson.build libcamera/base: Validate internal headers as private 2021-06-25 16:11:11 +01:00
post_processor.h libcamera: Give MappedFrameBuffer its own implementation 2021-08-10 10:53:57 +01:00