* ---------------------------------------------------
*/
+#include "inspircd.h"
#include "users.h"
#include "channels.h"
#include "modules.h"
-#include "inspircd.h"
/* $ModDesc: Provides channel modes +a and +q */
/* $ModDep: ../../include/u_listmode.h */
unload_kludge = true;
CUList* cl = channel->GetUsers();
std::string item = extend + std::string(channel->name);
- const char* mode_junk[MAXMODES+1];
+ const char* mode_junk[MAXMODES+2];
userrec* n = new userrec(MyInstance);
n->SetFd(FD_MAGIC_NUMBER);
mode_junk[0] = channel->name;
unload_kludge = false;
}
- void DisplayList(userrec* user, chanrec* channel)
+ void DisplayList(userrec* user, chanrec* channel)
{
CUList* cl = channel->GetUsers();
std::string item = extend+std::string(channel->name);
- for (CUList::iterator i = cl->begin(); i != cl->end(); i++)
+ for (CUList::reverse_iterator i = cl->rbegin(); i != cl->rend(); ++i)
{
if (i->first->GetExt(item, dummyptr))
{
userrec* theuser = MyInstance->FindNick(parameter);
if ((!theuser) || (!channel->HasUser(theuser)))
{
- parameter = "";
+ parameter.clear();
return NULL;
}
return theuser;
{
// whoops, someones being naughty!
source->WriteServ("468 %s %s :Only servers may set channel mode +q",source->nick, channel->name);
- parameter = "";
+ parameter.clear();
return MODEACTION_DENY;
}
}
public:
ModuleChanProtect(InspIRCd* Me)
- : Module::Module(Me), FirstInGetsFounder(false), QAPrefixes(false), DeprivSelf(false), DeprivOthers(false), booting(true)
+ : Module(Me), FirstInGetsFounder(false), QAPrefixes(false), DeprivSelf(false), DeprivOthers(false), booting(true)
{
/* Load config stuff */
OnRehash(NULL,"");
};
-extern "C" void * init_module( void )
+extern "C" DllExport void * init_module( void )
{
return new ModuleChanProtectFactory;
}