diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewManager.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewManager.kt
index bd8db82d4a4402ff0b88af04608ffcca9f3d227b..e23d3c563319b894bfb8c27cd631c6f468d654e8 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewManager.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/BufferViewManager.kt
@@ -33,7 +33,7 @@ class BufferViewManager constructor(
     if (_bufferViewConfigs.contains(config.bufferViewId()))
       return
 
-    proxy.synchronize(config)
+    proxy.synchronize(config, !initialized)
     _bufferViewConfigs[config.bufferViewId()] = config
   }
 
diff --git a/lib/src/main/java/de/kuschku/libquassel/session/ProtocolHandler.kt b/lib/src/main/java/de/kuschku/libquassel/session/ProtocolHandler.kt
index e6badb492ec1b901175d7bcc5dd2ebc4446f72ea..84de4de6b0c51aec9e633a79561a200f9c9a9e03 100644
--- a/lib/src/main/java/de/kuschku/libquassel/session/ProtocolHandler.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/session/ProtocolHandler.kt
@@ -57,8 +57,9 @@ abstract class ProtocolHandler : SignalProxy, AuthHandler {
     obj.fromVariantMap(f.initData)
     obj.initialized = true
     synchronize(obj)
+    val list = toInit.remove(obj)
     checkForInitDone()
-    toInit.remove(obj)?.map(this::handle)
+    list?.map(this::handle)
     return true
   }