]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/main.cpp
Added ability to send and receive a challenge, dont do anything with it yet
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / main.cpp
index 471e7ba4d3c101de9ebadfd9c7db05495170aa75..9205077cf8e6ef6a9f147af97c8896eb4334213e 100644 (file)
@@ -163,7 +163,7 @@ const std::string ModuleSpanningTree::MapOperInfo(TreeServer* Current)
 }
 
 // WARNING: NOT THREAD SAFE - DONT GET ANY SMART IDEAS.
-void ModuleSpanningTree::ShowMap(TreeServer* Current, userrec* user, int depth, char matrix[128][80], float &totusers, float &totservers)
+void ModuleSpanningTree::ShowMap(TreeServer* Current, userrec* user, int depth, char matrix[128][128], float &totusers, float &totservers)
 {
        if (line < 128)
        {
@@ -183,7 +183,10 @@ void ModuleSpanningTree::ShowMap(TreeServer* Current, userrec* user, int depth,
                        spacer[5] = '\0';
                }
                float percent;
-               char text[80];
+               char text[128];
+               /* Neat and tidy default values, as we're dealing with a matrix not a simple string */
+               memset(text, 0, 128);
+
                if (ServerInstance->clientlist->size() == 0) {
                        // If there are no users, WHO THE HELL DID THE /MAP?!?!?!
                        percent = 0;
@@ -193,10 +196,10 @@ void ModuleSpanningTree::ShowMap(TreeServer* Current, userrec* user, int depth,
                        percent = ((float)Current->GetUserCount() / (float)ServerInstance->clientlist->size()) * 100;
                }
                const std::string operdata = IS_OPER(user) ? MapOperInfo(Current) : "";
-               snprintf(text, 80, "%s %s%5d [%5.2f%%]%s", Current->GetName().c_str(), spacer, Current->GetUserCount(), percent, operdata.c_str());
+               snprintf(text, 126, "%s %s%5d [%5.2f%%]%s", Current->GetName().c_str(), spacer, Current->GetUserCount(), percent, operdata.c_str());
                totusers += Current->GetUserCount();
                totservers++;
-               strlcpy(&matrix[line][depth],text,80);
+               strlcpy(&matrix[line][depth],text,126);
                line++;
                for (unsigned int q = 0; q < Current->ChildCount(); q++)
                {
@@ -315,7 +318,7 @@ void ModuleSpanningTree::HandleMap(const char** parameters, int pcnt, userrec* u
        // client does not provide for a proper terminal.
        float totusers = 0;
        float totservers = 0;
-       char matrix[128][80];
+       char matrix[128][128];
        for (unsigned int t = 0; t < 128; t++)
        {
                matrix[t][0] = '\0';