summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_spanningtree.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/modules/m_spanningtree.cpp b/src/modules/m_spanningtree.cpp
index 837ca2ce4..63733f29a 100644
--- a/src/modules/m_spanningtree.cpp
+++ b/src/modules/m_spanningtree.cpp
@@ -1914,19 +1914,22 @@ class TreeSocket : public InspSocket
if (numusers)
buffer.append(list).append("\n");
- for (BanList::iterator b = c->bans.begin(); b != c->bans.end(); b++)
- {
+ for (BanList::iterator b = c->bans.begin(); b != c->bans.end(); b++)
+ {
modes.append("b");
params.append(" ").append(b->data);
+
if (params.length() >= MAXMODES)
{
/* Wrap at MAXMODES */
- buffer.append(":").append(this->Instance->Config->ServerName).append(" FMODE ").append(c->name).append(ConvToStr(c->age)).append(" +").append(modes).append(params).append("\n");
+ buffer.append(":").append(this->Instance->Config->ServerName).append(" FMODE ").append(c->name)..append(" ").append(ConvToStr(c->age)).append(" +").append(modes).append(params).append("\n");
modes = "";
params = "";
}
- }
+ }
+
buffer.append(":").append(this->Instance->Config->ServerName).append(" FMODE ").append(c->name).append(ConvToStr(c->age)).append(" +").append(c->ChanModes(true));
+
/* Only send these if there are any */
if (!modes.empty())
buffer.append("\n").append(":").append(this->Instance->Config->ServerName).append(" FMODE ").append(c->name).append(ConvToStr(c->age)).append(" +").append(modes).append(params);