From 5ffb6b3886cca4874250ce372ded126a9e9906fd Mon Sep 17 00:00:00 2001 From: ggabr <10714429-ggabr@users.noreply.gitlab.com> Date: Sat, 27 Jul 2024 15:07:24 +0200 Subject: [PATCH] DownloadWorker, really fail on incorrect hashes assert() only does something in debug builds, so the hash was never really checked. The Log.e line might be reduntant. --- .../java/com/aurora/store/data/work/DownloadWorker.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt index 09de99326..ebcc33c46 100644 --- a/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt +++ b/app/src/main/java/com/aurora/store/data/work/DownloadWorker.kt @@ -298,8 +298,13 @@ class DownloadWorker @AssistedInject constructor( } // Ensure downloaded file matches expected sha - assert(validSha(request.file, expectedSha, algorithm)) - return@withContext Result.success() + if (validSha(request.file, expectedSha, algorithm)) { + return@withContext Result.success() + } else { + Log.e(TAG, "Incorrect hash for ${request.file}") + throw Exception("Incorrect hash") + } + } catch (exception: Exception) { Log.e(TAG, "Failed to download ${request.file}!", exception) notifyStatus(DownloadStatus.FAILED)