diff options
author | Chien-Yu Chen <cychen@google.com> | 2015-09-01 14:16:44 -0700 |
---|---|---|
committer | Chien-Yu Chen <cychen@google.com> | 2015-09-01 14:16:44 -0700 |
commit | fe751bea0d3eedd6e817aebf4e457425b82e7117 (patch) | |
tree | 263226e98081eb5f3ed9dc8d20840719b837d4f3 /services/camera/libcameraservice/CameraService.h | |
parent | 389e765394a950b9697bba49c1998f2029bd58b4 (diff) | |
download | frameworks_av-fe751bea0d3eedd6e817aebf4e457425b82e7117.zip frameworks_av-fe751bea0d3eedd6e817aebf4e457425b82e7117.tar.gz frameworks_av-fe751bea0d3eedd6e817aebf4e457425b82e7117.tar.bz2 |
Camera: Fix flashlight deadlock
Use a dedicated mutex for torch UID map so it won't cause a deadlock
after flashlight app gets killed while the torch is on.
Bug: 23722318
Change-Id: I228377aa0412052d56b6b948361d9abaecbbc686
Diffstat (limited to 'services/camera/libcameraservice/CameraService.h')
-rw-r--r-- | services/camera/libcameraservice/CameraService.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/services/camera/libcameraservice/CameraService.h b/services/camera/libcameraservice/CameraService.h index 7f4d43f..b56c161 100644 --- a/services/camera/libcameraservice/CameraService.h +++ b/services/camera/libcameraservice/CameraService.h @@ -648,8 +648,10 @@ private: sp<CameraFlashlight> mFlashlight; // guard mTorchStatusMap Mutex mTorchStatusMutex; - // guard mTorchClientMap, mTorchUidMap + // guard mTorchClientMap Mutex mTorchClientMapMutex; + // guard mTorchUidMap + Mutex mTorchUidMapMutex; // camera id -> torch status KeyedVector<String8, ICameraServiceListener::TorchStatus> mTorchStatusMap; // camera id -> torch client binder |