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() {