diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-08-27 02:39:35 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-08-27 02:39:35 +0000 |
commit | abbe621da60b30a1edf6f145159bd7403feb0e85 (patch) | |
tree | 60bfdb84bc52e9b08d115a23237fd825a7854db7 | |
parent | 0af4f792803654519392ce35ad5c8a30966f0a66 (diff) |
Fixes for w00t, now its boo time :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5032 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/modules/m_spanningtree.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/modules/m_spanningtree.cpp b/src/modules/m_spanningtree.cpp index 3ad091b71..a61791c43 100644 --- a/src/modules/m_spanningtree.cpp +++ b/src/modules/m_spanningtree.cpp @@ -1417,7 +1417,7 @@ class TreeSocket : public InspSocket /* Did they get any modes? How many times? */ for (int k = 0; k < ntimes; k++) - mode_users[modectr++] = usr; + mode_users[modectr++] = strdup(usr); // XXX who = this->Instance->FindNick(usr); if (who) @@ -1460,6 +1460,8 @@ class TreeSocket : public InspSocket DoOneToMany(this->Instance->Config->ServerName,"FMODE",params); } strcpy(mode_users[1],"+"); + for (unsigned int f = 2; f < modectr; f++) + free(mode_users[f]); modectr = 2; } } @@ -1496,6 +1498,9 @@ class TreeSocket : public InspSocket } DoOneToMany(this->Instance->Config->ServerName,"FMODE",params); } + + for (unsigned int f = 2; f < modectr; f++) + free(mode_users[f]); } return true; } |