X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_cap.cpp;h=e9f4dae90e09684c37d9286e23543ca9d636817a;hb=1c89cb1002c915a18abd1dda2204b5c3ea1b5515;hp=a905f2a37ffcb7241e8117a7b901f34b41c52cf9;hpb=0023d21ce23812ad59aefc0b62aac37bd09d182e;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_cap.cpp b/src/modules/m_cap.cpp index a905f2a37..e9f4dae90 100644 --- a/src/modules/m_cap.cpp +++ b/src/modules/m_cap.cpp @@ -108,7 +108,9 @@ class CommandCAP : public Command reghold.set(user, 1); Data.Send(); - std::string Result = irc::stringjoiner(" ", Data.ack, 0, Data.ack.size() - 1).GetJoined(); + std::string Result; + if (!Data.ack.empty()) + Result = irc::stringjoiner(" ", Data.ack, 0, Data.ack.size() - 1).GetJoined(); user->WriteServ("CAP %s ACK :%s", user->nick.c_str(), Result.c_str()); } else @@ -128,11 +130,15 @@ class ModuleCAP : public Module ModuleCAP() : cmd(this) { - ServerInstance->AddCommand(&cmd); - ServerInstance->Extensions.Register(&cmd.reghold); + } + + void init() + { + ServerInstance->Modules->AddService(cmd); + ServerInstance->Modules->AddService(cmd.reghold); Implementation eventlist[] = { I_OnCheckReady }; - ServerInstance->Modules->Attach(eventlist, this, 1); + ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation)); } ModResult OnCheckReady(LocalUser* user)