diff options
author | ByteHamster <info@bytehamster.com> | 2020-09-29 12:00:40 +0200 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2020-09-29 12:23:13 +0200 |
commit | f54076ca587e89c8af1bfb3d4a8e5bb442405e85 (patch) | |
tree | 527133895e75124ecd5f9f9eb9c8bc7b115c1aa1 /core/src | |
parent | 6b173d0c1adb36a0475871c13c82d8e6071573ce (diff) | |
download | AntennaPod-f54076ca587e89c8af1bfb3d4a8e5bb442405e85.zip |
Swallow undeliverable RxJava exceptions
AntennaPod threads might throw NPEs after disposing because we set controllers to null.
Diffstat (limited to 'core/src')
3 files changed, 0 insertions, 29 deletions
diff --git a/core/src/free/java/de/danoeh/antennapod/core/ClientConfig.java b/core/src/free/java/de/danoeh/antennapod/core/ClientConfig.java index 824a4fae3..ecb9d68df 100644 --- a/core/src/free/java/de/danoeh/antennapod/core/ClientConfig.java +++ b/core/src/free/java/de/danoeh/antennapod/core/ClientConfig.java @@ -9,7 +9,6 @@ import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; import de.danoeh.antennapod.core.storage.PodDBAdapter; import de.danoeh.antennapod.core.util.NetworkUtils; -import de.danoeh.antennapod.core.util.exception.RxJavaErrorHandlerSetup; import de.danoeh.antennapod.core.util.gui.NotificationUtils; import java.io.File; @@ -49,7 +48,6 @@ public class ClientConfig { NetworkUtils.init(context); AntennapodHttpClient.setCacheDirectory(new File(context.getCacheDir(), "okhttp")); SleepTimerPreferences.init(context); - RxJavaErrorHandlerSetup.setupRxJavaErrorHandler(); NotificationUtils.createChannels(context); initialized = true; } 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 deleted file mode 100644 index 223104d2e..000000000 --- a/core/src/main/java/de/danoeh/antennapod/core/util/exception/RxJavaErrorHandlerSetup.java +++ /dev/null @@ -1,24 +0,0 @@ -package de.danoeh.antennapod.core.util.exception; - -import android.util.Log; -import io.reactivex.exceptions.UndeliverableException; -import io.reactivex.plugins.RxJavaPlugins; - -public class RxJavaErrorHandlerSetup { - - private RxJavaErrorHandlerSetup() { - - } - - public static void setupRxJavaErrorHandler() { - RxJavaPlugins.setErrorHandler(e -> { - if (e instanceof UndeliverableException) { - // Probably just disposed because the fragment was left - Log.d("RxJavaErrorHandler", "Ignored exception: " + Log.getStackTraceString(e)); - return; - } - Thread.currentThread().getUncaughtExceptionHandler() - .uncaughtException(Thread.currentThread(), e); - }); - } -} diff --git a/core/src/play/java/de/danoeh/antennapod/core/ClientConfig.java b/core/src/play/java/de/danoeh/antennapod/core/ClientConfig.java index 7d38aedc2..41e95d99e 100644 --- a/core/src/play/java/de/danoeh/antennapod/core/ClientConfig.java +++ b/core/src/play/java/de/danoeh/antennapod/core/ClientConfig.java @@ -1,7 +1,6 @@ package de.danoeh.antennapod.core; import android.content.Context; -import android.content.Intent; import android.util.Log; import com.google.android.gms.common.GoogleApiAvailability; import com.google.android.gms.common.GooglePlayServicesNotAvailableException; @@ -15,7 +14,6 @@ import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.service.download.AntennapodHttpClient; import de.danoeh.antennapod.core.storage.PodDBAdapter; import de.danoeh.antennapod.core.util.NetworkUtils; -import de.danoeh.antennapod.core.util.exception.RxJavaErrorHandlerSetup; import de.danoeh.antennapod.core.util.gui.NotificationUtils; import java.io.File; @@ -67,7 +65,6 @@ public class ClientConfig { } AntennapodHttpClient.setCacheDirectory(new File(context.getCacheDir(), "okhttp")); SleepTimerPreferences.init(context); - RxJavaErrorHandlerSetup.setupRxJavaErrorHandler(); NotificationUtils.createChannels(context); initialized = true; } |