diff --git a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt index e701a543ba4a5f9ea07af7127124375eff5aa91d..7d5ccb03b543cdfae3fa5a592a3bc1411b62554d 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/service/QuasselService.kt @@ -364,7 +364,7 @@ class QuasselService : DaggerLifecycleService(), .observe( this, Observer { handlerService.backend { - LoggingHandler.log(INFO, "QuasselService", "Autoreconnect: Closed") + LoggingHandler.log(INFO, "QuasselService", "Autoreconnect: State Changed") sessionManager.autoReconnect() } }) diff --git a/app/src/main/java/de/kuschku/quasseldroid/util/backport/ReadableWrappedChannel.kt b/app/src/main/java/de/kuschku/quasseldroid/util/backport/ReadableWrappedChannel.kt index 6e0fd353d4f5546bfe8ebcc4cc9e9f0c24267b1e..ab3c8fa2d969e756181b531a34b5dc438af50d35 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/util/backport/ReadableWrappedChannel.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/util/backport/ReadableWrappedChannel.kt @@ -19,6 +19,8 @@ package de.kuschku.quasseldroid.util.backport +import de.kuschku.libquassel.util.compatibility.LoggingHandler.Companion.log +import de.kuschku.libquassel.util.compatibility.LoggingHandler.LogLevel.ERROR import java.io.InputStream import java.nio.ByteBuffer import java.nio.channels.ReadableByteChannel @@ -59,6 +61,10 @@ class ReadableWrappedChannel( end(readData > 0) } + if (readData <= 0) { + log(ERROR, "ReadableWrappedChannel", "Read: $readData") + } + // read is negative if no data was read, in that case, terminate if (readData < 0) break diff --git a/lib/src/main/java/de/kuschku/libquassel/connection/CoreConnection.kt b/lib/src/main/java/de/kuschku/libquassel/connection/CoreConnection.kt index d93b55792406fc4db5958b86039a72906cb60b76..3e6b6e25472cae2fb3afc6d1e86b61fb35d7b3db 100644 --- a/lib/src/main/java/de/kuschku/libquassel/connection/CoreConnection.kt +++ b/lib/src/main/java/de/kuschku/libquassel/connection/CoreConnection.kt @@ -86,8 +86,13 @@ class CoreConnection( } fun setState(value: ConnectionState) { - log(DEBUG, TAG, value.name) - state.onNext(value) + val current = state.value + if (current != ConnectionState.CLOSED) { + log(DEBUG, TAG, value.name) + state.onNext(value) + } else if (current != value) { + log(WARN, TAG, "Trying to set state while closed: $value", Throwable()) + } } private fun sendHandshake() {