From 93ffe9046343492e0f0050ea2541438f4b47fd34 Mon Sep 17 00:00:00 2001 From: sonalyadav Date: Sat, 15 Mar 2025 10:49:54 +0530 Subject: [PATCH] Fix crash when uploading a duplicate file --- .../java/fr/free/nrw/commons/upload/UploadPresenter.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadPresenter.kt b/app/src/main/java/fr/free/nrw/commons/upload/UploadPresenter.kt index 9ee8fb483..3f0b16b80 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadPresenter.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadPresenter.kt @@ -34,8 +34,7 @@ class UploadPresenter @Inject internal constructor( private val compositeDisposable = CompositeDisposable() - lateinit var basicKvStoreFactory: (String) -> BasicKvStore - + private var basicKvStoreFactory: ((String) -> BasicKvStore)? = null /** * Called by the submit button in [UploadActivity] */ @@ -132,6 +131,10 @@ class UploadPresenter @Inject internal constructor( basicKvStoreFactory = factory } + private fun getBasicKvStoreFactory(): (String) -> BasicKvStore { + return basicKvStoreFactory ?: throw IllegalStateException("basicKvStoreFactory has not been initialized") + } + /** * Calls checkImageQuality of UploadMediaPresenter to check image quality of next image * @@ -139,7 +142,7 @@ class UploadPresenter @Inject internal constructor( */ override fun checkImageQuality(uploadItemIndex: Int) { repository.getUploadItem(uploadItemIndex)?.let { - presenter.setupBasicKvStoreFactory(basicKvStoreFactory) + presenter.setupBasicKvStoreFactory(getBasicKvStoreFactory()) presenter.checkImageQuality(it, uploadItemIndex) } }