diff options
Diffstat (limited to 'src/channels.cpp')
-rw-r--r-- | src/channels.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/channels.cpp b/src/channels.cpp index 2ea8688cf..53a48c469 100644 --- a/src/channels.cpp +++ b/src/channels.cpp @@ -136,10 +136,18 @@ void Channel::SetDefaultModes() continue; if (mode->GetNumParams(true)) + { list.GetToken(parameter); + // If the parameter begins with a ':' then it's invalid + if (parameter.c_str()[0] == ':') + continue; + } else parameter.clear(); + if ((mode->GetNumParams(true)) && (parameter.empty())) + continue; + mode->OnModeChange(ServerInstance->FakeClient, ServerInstance->FakeClient, this, parameter, true); } } |