Bug 1420585 - remove unnecessary stopCapture which causes deadlock. r=jib

MozReview-Commit-ID: F8xcOSPihDN

--HG--
extra : rebase_source : 057b77496aa86f9e7f3b4ccd858ec74e8c8453a8
This commit is contained in:
Munro Mengjue Chiang 2018-01-05 15:50:23 +08:00
Родитель 9b5b59b43a
Коммит 3c82ef78a0
1 изменённых файлов: 7 добавлений и 5 удалений

Просмотреть файл

@ -248,11 +248,13 @@ public class VideoCaptureAndroid implements PreviewCallback, Callback {
error = e;
}
Log.e(TAG, "startCapture failed", error);
if (camera != null) {
Exchanger<Boolean> resultDropper = new Exchanger<Boolean>();
stopCaptureOnCameraThread(resultDropper);
exchange(resultDropper, false);
}
// For some devices, camera.setParameters(parameters) would throw
// an exception when a specific resolution is set. Originally,
// stopCaptureOnCameraThread() is called here to clear up the state.
// However, stopCaptureOnCameraThread(), which uses Exchanger to
// synchronize and swap data with MediaManager thread, is supposed to be
// called by MediaManager thread like we did at stopCapture(). Calling
// this function directly in CameraThread will cause deadlock.
exchange(result, false);
return;
}