X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsnomasks.cpp;h=820f65e4bb81fbfacd0819c998c85a163e2e8375;hb=bbeb5ea38686dfeb9537860770bbdb3bd2f9cd3f;hp=c35c19d4eb680013ccf737259c247acc1ded0b4c;hpb=fcacc8e0306382bc3f938073092c3729d77e2b41;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/snomasks.cpp b/src/snomasks.cpp index c35c19d4e..820f65e4b 100644 --- a/src/snomasks.cpp +++ b/src/snomasks.cpp @@ -52,26 +52,16 @@ void SnomaskManager::WriteGlobalSno(char letter, const std::string& text) void SnomaskManager::WriteToSnoMask(char letter, const char* text, ...) { - char textbuffer[MAXBUF]; - va_list argsPtr; - - va_start(argsPtr, text); - vsnprintf(textbuffer, MAXBUF, text, argsPtr); - va_end(argsPtr); - - this->WriteToSnoMask(letter, std::string(textbuffer)); + std::string textbuffer; + VAFORMAT(textbuffer, text, text); + this->WriteToSnoMask(letter, textbuffer); } void SnomaskManager::WriteGlobalSno(char letter, const char* text, ...) { - char textbuffer[MAXBUF]; - va_list argsPtr; - - va_start(argsPtr, text); - vsnprintf(textbuffer, MAXBUF, text, argsPtr); - va_end(argsPtr); - - this->WriteGlobalSno(letter, std::string(textbuffer)); + std::string textbuffer; + VAFORMAT(textbuffer, text, text); + this->WriteGlobalSno(letter, textbuffer); } SnomaskManager::SnomaskManager() @@ -100,11 +90,11 @@ void Snomask::SendMessage(const std::string &message, char mysnomask) std::string desc = Description; if (desc.empty()) - desc = "SNO-" + tolower(mysnomask); + desc = std::string("SNO-") + (char)tolower(mysnomask); if (isupper(mysnomask)) desc = "REMOTE" + desc; ModResult MOD_RESULT; - ServerInstance->Logs->Log("snomask", DEFAULT, "%s: %s", desc.c_str(), message.c_str()); + ServerInstance->Logs->Log("snomask", LOG_DEFAULT, "%s: %s", desc.c_str(), message.c_str()); FIRST_MOD_RESULT(OnSendSnotice, MOD_RESULT, (mysnomask, desc, message)); @@ -120,7 +110,7 @@ void Snomask::SendMessage(const std::string &message, char mysnomask) User* a = *i; if (IS_LOCAL(a) && a->IsModeSet('s') && a->IsNoticeMaskSet(mysnomask) && !a->quitting) { - a->WriteServ("NOTICE %s :*** %s: %s", a->nick.c_str(), desc.c_str(), message.c_str()); + a->WriteNotice("*** " + desc + ": " + message); } i++; @@ -136,12 +126,12 @@ void Snomask::Flush() { std::string desc = Description; if (desc.empty()) - desc = "SNO-" + tolower(LastLetter); + desc = std::string("SNO-") + (char)tolower(LastLetter); if (isupper(LastLetter)) desc = "REMOTE" + desc; std::string mesg = "(last message repeated "+ConvToStr(Count)+" times)"; - ServerInstance->Logs->Log("snomask", DEFAULT, "%s: %s", desc.c_str(), mesg.c_str()); + ServerInstance->Logs->Log("snomask", LOG_DEFAULT, "%s: %s", desc.c_str(), mesg.c_str()); FOREACH_MOD(I_OnSendSnotice, OnSendSnotice(LastLetter, desc, mesg)); @@ -155,7 +145,7 @@ void Snomask::Flush() User* a = *i; if (IS_LOCAL(a) && a->IsModeSet('s') && a->IsNoticeMaskSet(LastLetter) && !a->quitting) { - a->WriteServ("NOTICE %s :*** %s: %s", a->nick.c_str(), desc.c_str(), mesg.c_str()); + a->WriteNotice("*** " + desc + ": " + mesg); } i++; @@ -163,7 +153,7 @@ void Snomask::Flush() } } - LastMessage = ""; + LastMessage.clear(); LastBlocked = false; Count = 0; }