From: danieldg Date: Mon, 8 Mar 2010 17:15:52 +0000 (+0000) Subject: Warn about duplicate and blocks X-Git-Tag: v2.0.23~958 X-Git-Url: https://git.netwichtig.de/gitweb/?a=commitdiff_plain;h=2465c2ab91bb33c4ec00305dc5b3cb5b773016af;p=user%2Fhenk%2Fcode%2Finspircd.git Warn about duplicate and blocks git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12614 e03df62e-2008-0410-955e-edbf42e46eb7 --- diff --git a/src/configreader.cpp b/src/configreader.cpp index 1905b36d0..696b19a1b 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -185,6 +185,8 @@ void ServerConfig::CrossCheckOperClassType() std::string name = tag->getString("name"); if (name.empty()) throw CoreException(" missing from tag at " + tag->getTagLocation()); + if (operclass.find(name) != oper_blocks.end()) + throw CoreException("Duplicate class block with name " + name + " at " + tag->getTagLocation()); operclass[name] = tag; } tags = ConfTags("type"); @@ -194,9 +196,10 @@ void ServerConfig::CrossCheckOperClassType() std::string name = tag->getString("name"); if (name.empty()) throw CoreException(" is missing from tag at " + tag->getTagLocation()); - if (!ServerInstance->IsNick(name.c_str(), Limits.NickMax)) throw CoreException(" is invalid (value '" + name + "')"); + if (oper_blocks.find(" " + name) != oper_blocks.end()) + throw CoreException("Duplicate type block with name " + name + " at " + tag->getTagLocation()); OperInfo* ifo = new OperInfo; oper_blocks[" " + name] = ifo;