diff --git a/app/build.gradle b/app/build.gradle index 8317a9918..7798d0777 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -144,7 +144,7 @@ dependencies { implementation 'ch.acra:acra-http:5.11.3' implementation 'ch.acra:acra-dialog:5.11.3' - implementation 'org.conscrypt:conscrypt-android:2.5.3' + implementation 'org.conscrypt:conscrypt-android:2.5.2' debugImplementation 'com.squareup.leakcanary:leakcanary-android:3.0-alpha-8' debugImplementation 'com.github.Koitharu:WorkInspector:5778dd1747' diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 6189684d2..33f424b19 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -22,3 +22,7 @@ -keep class org.koitharu.kotatsu.settings.backup.PeriodicalBackupSettingsFragment { *; } -keep class org.jsoup.parser.Tag -keep class org.jsoup.internal.StringUtil + +-keep class org.acra.security.NoKeyStoreFactory { *; } +-keep class org.acra.config.DefaultRetryPolicy { *; } +-keep class org.acra.attachment.DefaultAttachmentProvider { *; } diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/core/network/NetworkModule.kt b/app/src/main/kotlin/org/koitharu/kotatsu/core/network/NetworkModule.kt index a89e7c162..8d617cb68 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/core/network/NetworkModule.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/core/network/NetworkModule.kt @@ -1,7 +1,6 @@ package org.koitharu.kotatsu.core.network import android.content.Context -import android.util.AndroidRuntimeException import dagger.Binds import dagger.Module import dagger.Provides @@ -19,6 +18,7 @@ import org.koitharu.kotatsu.core.network.imageproxy.ImageProxyInterceptor import org.koitharu.kotatsu.core.network.imageproxy.RealImageProxyInterceptor import org.koitharu.kotatsu.core.prefs.AppSettings import org.koitharu.kotatsu.core.util.ext.assertNotInMainThread +import org.koitharu.kotatsu.core.util.ext.printStackTraceDebug import org.koitharu.kotatsu.local.data.LocalStorageManager import java.util.concurrent.TimeUnit import javax.inject.Provider @@ -40,9 +40,10 @@ interface NetworkModule { @Singleton fun provideCookieJar( @ApplicationContext context: Context - ): MutableCookieJar = try { + ): MutableCookieJar = runCatching { AndroidCookieJar() - } catch (e: AndroidRuntimeException) { + }.getOrElse { e -> + e.printStackTraceDebug() // WebView is not available PreferencesCookieJar(context) } diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/filter/ui/sheet/FilterSheetFragment.kt b/app/src/main/kotlin/org/koitharu/kotatsu/filter/ui/sheet/FilterSheetFragment.kt index 1eb906384..e963deb77 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/filter/ui/sheet/FilterSheetFragment.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/filter/ui/sheet/FilterSheetFragment.kt @@ -275,7 +275,7 @@ class FilterSheetFragment : BaseAdaptiveSheet(), private fun setSortDirection(direction: SortDirection) { val filter = requireFilter() - val currentOrder = filter.filterSortOrder.value.selectedItems.single() + val currentOrder = filter.filterSortOrder.value.selectedItems.singleOrNull() ?: return val newOrder = currentOrder[direction] filter.setSortOrder(newOrder) }