QR code decoder throws ArrayIndexOutOfBoundsException
I got this crash on the Galaxy Ace 2 while testing the 278-bqp-ui branch, but it doesn't look like it's specific to that branch:
04-15 16:35:16.004 6537-8301/org.briarproject W/CrashHandler: Uncaught exception
java.lang.RuntimeException: An error occured while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:299)
at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
Caused by: java.lang.ArrayIndexOutOfBoundsException: length=460800; index=460800
at com.google.zxing.common.HybridBinarizer.calculateBlackPoints(HybridBinarizer.java:184)
at com.google.zxing.common.HybridBinarizer.getBlackMatrix(HybridBinarizer.java:79)
at com.google.zxing.BinaryBitmap.getBlackMatrix(BinaryBitmap.java:85)
at com.google.zxing.qrcode.QRCodeReader.decode(QRCodeReader.java:77)
at org.briarproject.android.util.QrCodeDecoder$DecoderTask.doInBackground(QrCodeDecoder.java:87)
at org.briarproject.android.util.QrCodeDecoder$DecoderTask.doInBackground(QrCodeDecoder.java:63)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)