diff --git a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
index 690d52e79966f11400129e6d62e76319a1469852..418e7f5054e1b9445da6b90c172961be8be05039 100644
--- a/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
+++ b/lib/src/main/java/de/kuschku/libquassel/quassel/syncables/IrcChannel.kt
@@ -316,7 +316,7 @@ class IrcChannel(
   override fun removeUserMode(ircuser: IrcUser?, mode: String) {
     if (ircuser == null || !isKnownUser(ircuser) || !isValidChannelUserMode(mode))
       return
-    if (_userModes.getOr(ircuser, "").contains(mode, ignoreCase = true))
+    if (!_userModes.getOr(ircuser, "").contains(mode, ignoreCase = true))
       return
     _userModes[ircuser] = _userModes.getOr(ircuser, "")
       .replace(mode, "", ignoreCase = true)