Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Camera: fix possible nullptr on setCallbacks
Fix crashes like this: 05-03 20:55:09.029 6254 6254 F DEBUG : #00 pc 00000000 <unknown> 05-03 20:55:09.029 6254 6254 F DEBUG : DotOS#1 pc 000ec8ab /system/lib/libcameraservice.so (android::CameraHardwareInterface::notifyCallback(android::hardware::camera::device::V1_0::NotifyCallbackMsg, int, int)+18) (BuildId: 078b8118f1d0503988dc8f86045848d8) 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#2 pc 0002e6cd /system/lib/[email protected] (android::hardware::camera::device::V1_0::BsCameraDeviceCallback::notifyCallback(android::hardware::camera::device::V1_0::NotifyCallbackMsg, int, int)+96) (BuildId: a964b5ab287096bfb4e9fb1357483757) 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#3 pc 00013783 /system/vendor/lib/[email protected]_msm8960.so (android::hardware::camera::device::V1_0::implementation::CameraDevice::sNotifyCb(int, int, int, void*)+46) (BuildId: 183c013753a49cdceaf880f00b6083b7) 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#4 pc 00038b99 /system/vendor/lib/hw/camera.vendor.msm8960.so (android::QCameraStream_preview::processPreviewFrameWithDisplay(mm_camera_ch_data_buf_t*)+128) 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#5 pc 000086ff /system/lib/libmmcamera_interface2.so 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#6 pc 00008855 /system/lib/libmmcamera_interface2.so (mm_camera_msm_data_notify+248) 05-03 20:55:09.030 6254 6254 F DEBUG : DotOS#7 pc 0000736f /system/lib/libmmcamera_interface2.so 05-03 20:55:09.030 6254 6254 F DEBUG : #08 pc 000a6b67 /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+20) (BuildId: 1c34385a63ae9f807822c87c6b4126d2) 05-03 20:55:09.030 6254 6254 F DEBUG : #09 pc 00060101 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30) (BuildId: 1c34385a63ae9f807822c87c6b4126d2) In case of HTC One M7, the nullptr appears because of this call: https://github.com/AICP/frameworks_av/blob/q10.0/services/camera/libcameraservice/CameraFlashlight.cpp#L528 And while we're on it, lets fix some more possible nullptr's too. Change-Id: I2f67756d576d62560a2e65af55ab868bfc3e36ba Signed-off-by: Julian Veit <[email protected]>
- Loading branch information