diff options
author | H. Lehmann <ByteHamster@users.noreply.github.com> | 2019-09-26 18:58:04 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-26 18:58:04 +0200 |
commit | 25bd5bbeedb702968d812a30a6203f670fb6947a (patch) | |
tree | 16244ba2ea1c219c5a9bc23a54a7889c6a46729a /core/src/main/java/de | |
parent | b1242ec1c00314fa641801390530a9e30a3f9d5a (diff) | |
parent | 2b8b262499db329ef529cf68ffa2c1b17c09f40d (diff) | |
download | AntennaPod-25bd5bbeedb702968d812a30a6203f670fb6947a.zip |
Merge pull request #3450 from ByteHamster/undeliverable-exception
Fixed crashes when leaving search fragments
Diffstat (limited to 'core/src/main/java/de')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java b/core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java index 12f0c1c6e..223104d2e 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java @@ -1,12 +1,9 @@ package de.danoeh.antennapod.core.util.exception; import android.util.Log; -import de.danoeh.antennapod.core.gpoddernet.GpodnetServiceException; import io.reactivex.exceptions.UndeliverableException; import io.reactivex.plugins.RxJavaPlugins; -import java.io.InterruptedIOException; - public class RxJavaErrorHandlerSetup { private RxJavaErrorHandlerSetup() { @@ -14,21 +11,14 @@ public class RxJavaErrorHandlerSetup { } public static void setupRxJavaErrorHandler() { - RxJavaPlugins.setErrorHandler(originalCause -> { - Throwable e = originalCause; + RxJavaPlugins.setErrorHandler(e -> { if (e instanceof UndeliverableException) { - e = e.getCause(); - } - if (e instanceof GpodnetServiceException) { - e = e.getCause(); - } - if (e instanceof InterruptedException || e instanceof InterruptedIOException) { - // fine, some blocking code was interrupted by a dispose call - Log.d("RxJavaErrorHandler", "Ignored exception: " + Log.getStackTraceString(originalCause)); + // Probably just disposed because the fragment was left + Log.d("RxJavaErrorHandler", "Ignored exception: " + Log.getStackTraceString(e)); return; } Thread.currentThread().getUncaughtExceptionHandler() - .uncaughtException(Thread.currentThread(), originalCause); + .uncaughtException(Thread.currentThread(), e); }); } } |