{"push_id":3006751492,"size":1,"distinct_size":1,"ref":"refs/heads/9.0","head":"71d8881b717110e84e473506c65e6db9b336ad81","before":"119c8f0946735c1c4b7b2d51f7b978170bacef45","commits":[{"sha":"71d8881b717110e84e473506c65e6db9b336ad81","author":{"name":"Artem Borisov","email":"f9463d398a2472ef5fe6578acbe4253a3e7c61e9@gmail.com"},"message":"CameraService: Support calling addStates in enumerateProviders\n\nSome pre-P camera HALs trigger onDeviceStatusChange callback during HAL init.\nThis is horribly wrong and causes a race condition between enumerateProviders\nand onDeviceStatusChange. While it wasn't really harmful in O, in P call sequence\nwas changed and now this race condition leads to two problems: null pointer dereference\nin addStates because mFlashlight is not initialized at a proper timing; mServiceLock\ndeadlock because updateCameraNumAndIds and enumerateProviders are called at the same time.\nMoving addStates back to enumerateProviders makes the sequence more similar to O, and doesn't\nlet these two issues to happen.\nEnable TARGET_CAMERA_NEEDS_ADD_STATES_IN_ENUMERATE when it is necessary.\n\nChange-Id: Ife25b9753fdb679ab0c77f385e1b8527551a4711\nSigned-off-by: DennySPB <dennyspb@gmail.com>","distinct":true,"url":"https://api.github.com/repos/syberia-project/platform_frameworks_av/commits/71d8881b717110e84e473506c65e6db9b336ad81"}]}
{"actor":{"display_login":"syberiagerrit"}}