summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-07-25 10:35:40 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-07-25 10:35:40 +0000
commitf3abcc8befc200b906aa835d76435856eb3c8645 (patch)
tree58134eb1824f84ac0466387123fb2451e0dd48c0
parent9c213ae9c6f9f694f5f85f22b6af507ceba55acb (diff)
Prevent notice loops on servermasks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4541 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/modules/m_spanningtree.cpp26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/modules/m_spanningtree.cpp b/src/modules/m_spanningtree.cpp
index 8901c4353..44ee04bfd 100644
--- a/src/modules/m_spanningtree.cpp
+++ b/src/modules/m_spanningtree.cpp
@@ -3489,11 +3489,14 @@ class ModuleSpanningTree : public Module
}
else if (target_type == TYPE_SERVER)
{
- char* target = (char*)dest;
- std::deque<std::string> par;
- par.push_back(target);
- par.push_back(":"+text);
- DoOneToMany(user->nick,"NOTICE",par);
+ if (user->fd > -1)
+ {
+ char* target = (char*)dest;
+ std::deque<std::string> par;
+ par.push_back(target);
+ par.push_back(":"+text);
+ DoOneToMany(user->nick,"NOTICE",par);
+ }
}
}
@@ -3534,11 +3537,14 @@ class ModuleSpanningTree : public Module
}
else if (target_type == TYPE_SERVER)
{
- char* target = (char*)dest;
- std::deque<std::string> par;
- par.push_back(target);
- par.push_back(":"+text);
- DoOneToMany(user->nick,"PRIVMSG",par);
+ if (user->fd > -1)
+ {
+ char* target = (char*)dest;
+ std::deque<std::string> par;
+ par.push_back(target);
+ par.push_back(":"+text);
+ DoOneToMany(user->nick,"PRIVMSG",par);
+ }
}
}