]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/channels.cpp
Merge insp20
[user/henk/code/inspircd.git] / src / channels.cpp
index 2ea8688cf51c311e7c0279501d400b1bd6279d5f..53a48c46970204d108f2eeba992bd6d429b296f2 100644 (file)
@@ -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);
                }
        }