diff --git a/src/channels.cpp b/src/channels.cpp index fdf20facf..5b487a347 100644 --- a/src/channels.cpp +++ b/src/channels.cpp @@ -826,7 +826,12 @@ Anope::string Channel::GetModes(bool complete, bool plus) res += cm->mchar; if (complete && !it->second.empty()) - params += " " + it->second; + { + ChannelModeParam *cmp = anope_dynamic_static_cast(cm); + + if (plus || !cmp->minus_no_arg) + params += " " + it->second; + } } return res + params;