]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/helperfuncs.cpp
Move this to m_mysql.cpp - dont even bother reading this yet its unchanged from m_sql
[user/henk/code/inspircd.git] / src / helperfuncs.cpp
index ea7f558db6c2b2d04615ebb5c03aab9b49b35e23..02a23c0acf73ad33137d80a35db158ce54b7afdb 100644 (file)
@@ -51,7 +51,7 @@ extern InspIRCd* ServerInstance;
 extern time_t TIME;
 extern char lowermap[255];
 extern userrec* fd_ref_table[MAX_DESCRIPTORS];
-static char already_sent[MAX_DESCRIPTORS];
+static unsigned long already_sent[MAX_DESCRIPTORS] = {0};
 extern std::vector<userrec*> all_opers;
 extern user_hash clientlist;
 extern chan_hash chanlist;
@@ -64,7 +64,7 @@ static char TIMESTR[26];
 static time_t LAST = 0;
 
 /* XXX: Used for speeding up WriteCommon operations */
-int uniq_id = 0;
+unsigned long uniq_id = 0;
 
 /** log()
  *  Write a line of text `text' to the logfile (and stdout, if in nofork) if the level `level'
@@ -709,14 +709,8 @@ void WriteCommon(userrec *u, char* text, ...)
        vsnprintf(textbuffer, MAXBUF, text, argsPtr);
        va_end(argsPtr);
 
-       // XXX: Save on memset calls by only requiring memset every 4 billion or so
-       // messages. This clever trick thought of during discussion with nazzy and w00t.
+       // XXX: Save on memset calls by using an ID. This clever trick thought of during discussion with nazzy and w00t.
        uniq_id++;
-       if (!uniq_id)
-       {
-               memset(&already_sent,0,MAX_DESCRIPTORS);
-               uniq_id++;
-       }
 
        for (std::vector<ucrec*>::const_iterator v = u->chans.begin(); v != u->chans.end(); v++)
        {
@@ -764,11 +758,6 @@ void WriteCommon_NoFormat(userrec *u, const char* text)
 
        // XXX: See comment in WriteCommon
        uniq_id++;
-       if (!uniq_id)
-       {
-               memset(&already_sent,0,MAX_DESCRIPTORS);
-               uniq_id++;
-       }
 
        for (std::vector<ucrec*>::const_iterator v = u->chans.begin(); v != u->chans.end(); v++)
        {
@@ -869,11 +858,6 @@ void WriteCommonExcept(userrec *u, char* text, ...)
        }
 
        uniq_id++;
-       if (!uniq_id)
-       {
-               memset(&already_sent,0,MAX_DESCRIPTORS);
-               uniq_id++;
-       }
 
        for (std::vector<ucrec*>::const_iterator v = u->chans.begin(); v != u->chans.end(); v++)
        {
@@ -917,11 +901,6 @@ void WriteCommonExcept_NoFormat(userrec *u, const char* text)
        }
 
        uniq_id++;
-       if (!uniq_id)
-       {
-               memset(&already_sent,0,MAX_DESCRIPTORS);
-               uniq_id++;
-       }
 
        for (std::vector<ucrec*>::const_iterator v = u->chans.begin(); v != u->chans.end(); v++)
        {
@@ -1235,13 +1214,14 @@ void purge_empty_chans(userrec* u)
        // firstly decrement the count on each channel
        for (std::vector<ucrec*>::iterator f = u->chans.begin(); f != u->chans.end(); f++)
        {
-               if (((ucrec*)(*f))->channel)
+               ucrec* uc = (ucrec*)(*f);
+               if (uc->channel)
                {
-                       if (((ucrec*)(*f))->channel->DelUser(u) == 0)
+                       if (uc->channel->DelUser(u) == 0)
                        {
                                /* No users left in here, mark it for deletion */
-                               to_delete.push_back(((ucrec*)(*f))->channel);
-                               ((ucrec*)(*f))->channel = NULL;
+                               to_delete.push_back(uc->channel);
+                               uc->channel = NULL;
                        }
                }
        }
@@ -1579,7 +1559,7 @@ void ShowMOTD(userrec *user)
        WriteServ(user->fd,"375 %s :%s message of the day", user->nick, Config->ServerName);
 
        for (unsigned int i = 0; i < Config->MOTD.size(); i++)
-               WriteServ(user->fd,"372 %s :- ",user->nick,Config->MOTD[i].c_str());
+               WriteServ(user->fd,"372 %s :- %s",user->nick,Config->MOTD[i].c_str());
 
        WriteServ(user->fd,"376 %s :End of message of the day.", user->nick);
 }