diff --git a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/QrCodeDecoder.java b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/QrCodeDecoder.java index e69dc2da711decff1ef315a621ca391e926d64fe..6482e723946bef18363dab6b18ea7dc2d26f1fda 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/QrCodeDecoder.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/QrCodeDecoder.java @@ -22,6 +22,7 @@ import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault; import java.util.logging.Logger; import static java.util.logging.Level.INFO; +import static java.util.logging.Level.WARNING; @SuppressWarnings("deprecation") @MethodsNotNullByDefault @@ -60,8 +61,12 @@ class QrCodeDecoder implements PreviewConsumer, PreviewCallback { @Override public void onPreviewFrame(byte[] data, Camera camera) { if (camera == this.camera) { - Size size = camera.getParameters().getPreviewSize(); - new DecoderTask(data, size.width, size.height).execute(); + try { + Size size = camera.getParameters().getPreviewSize(); + new DecoderTask(data, size.width, size.height).execute(); + } catch (RuntimeException e) { + LOG.log(WARNING, "Error getting camera parameters.", e); + } } } @@ -70,7 +75,7 @@ class QrCodeDecoder implements PreviewConsumer, PreviewCallback { private final byte[] data; private final int width, height; - DecoderTask(byte[] data, int width, int height) { + private DecoderTask(byte[] data, int width, int height) { this.data = data; this.width = width; this.height = height;