prevent a thread race in CameraView

when a camera preview surface is destroyed, send it down the same pipelien
to make sure a race condition isn't hit

fixes #3864
Closes #3875
// FREEBIE
pull/1/head
Jake McGinty 9 years ago committed by Moxie Marlinspike
parent 324c85cd9f
commit 52e4abf562

@ -137,9 +137,7 @@ public class CameraView extends FrameLayout {
}
@Override protected Void onRunBackground() {
if (camera != null) {
previewDestroyed();
}
previewDestroyed();
return null;
}

@ -56,7 +56,7 @@ class SurfacePreviewStrategy implements PreviewStrategy,
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
Log.w(TAG, "surfaceDestroyed()");
cameraView.previewDestroyed();
cameraView.onPause();
}
@Override

@ -55,7 +55,7 @@ class TexturePreviewStrategy implements PreviewStrategy,
@Override
public boolean onSurfaceTextureDestroyed(SurfaceTexture surface) {
Log.w(TAG, "onSurfaceTextureDestroyed()");
cameraView.previewDestroyed();
cameraView.onPause();
return(true);
}

Loading…
Cancel
Save