QrCodeFromFileScanner: catch OOM errors
OutOfMemoryError is an Error which is a Throwable, but it isn't an exception. Try to catch it for downscaling by catching all Throwables. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
@@ -80,7 +80,7 @@ class QrCodeFromFileScanner(
|
|||||||
scanBitmapForResult(originalBitmap).also {
|
scanBitmapForResult(originalBitmap).also {
|
||||||
Log.d(TAG, "Found result in original image")
|
Log.d(TAG, "Found result in original image")
|
||||||
}
|
}
|
||||||
} catch (e: Exception) {
|
} catch (e: Throwable) {
|
||||||
Log.e(TAG, "Original image scan finished with error: $e, will try downscaled image")
|
Log.e(TAG, "Original image scan finished with error: $e, will try downscaled image")
|
||||||
val scaleBitmap = downscaleBitmap(originalBitmap, 500)
|
val scaleBitmap = downscaleBitmap(originalBitmap, 500)
|
||||||
scanBitmapForResult(originalBitmap).also { scaleBitmap.recycle() }
|
scanBitmapForResult(originalBitmap).also { scaleBitmap.recycle() }
|
||||||
|
|||||||
Reference in New Issue
Block a user