diff --git a/app/src/main/java/io/legado/app/help/coroutine/Coroutine.kt b/app/src/main/java/io/legado/app/help/coroutine/Coroutine.kt index 779cf609b..06c02f1a1 100644 --- a/app/src/main/java/io/legado/app/help/coroutine/Coroutine.kt +++ b/app/src/main/java/io/legado/app/help/coroutine/Coroutine.kt @@ -4,7 +4,9 @@ import kotlinx.coroutines.* import timber.log.Timber import kotlin.coroutines.CoroutineContext - +/** + * 链式协程 + */ @Suppress("unused") class Coroutine( val scope: CoroutineScope, @@ -146,18 +148,14 @@ class Coroutine( } catch (e: Throwable) { Timber.e(e) val consume: Boolean = errorReturn?.value?.let { value -> - if (isActive) { - success?.let { dispatchCallback(this, value, it) } - } + success?.let { dispatchCallback(this, value, it) } true } ?: false - if (!consume && isActive) { + if (!consume) { error?.let { dispatchCallback(this, e, it) } } } finally { - if (isActive) { - finally?.let { dispatchVoidCallback(this, it) } - } + finally?.let { dispatchVoidCallback(this, it) } } } }