summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-12-12 21:10:34 +0000
committerw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2008-12-12 21:10:34 +0000
commit93b0661ddaebc82df76e0268ebe0ab0c17f7cbc7 (patch)
tree42312d6d76a4c1046ec879fa91005a7e40c6ed1e
parent1bed8ef4ff6e0b34456fa0b3df180e5e78fe7a3f (diff)
Fix problem with autoconnects: don't reset NextConnectTime to a higher value than it currently is, as that doesn't play very nice with multiple autoconnect values..
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10879 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/modules/m_spanningtree/utils.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/modules/m_spanningtree/utils.cpp b/src/modules/m_spanningtree/utils.cpp
index 06851619c..f6e3ad6bd 100644
--- a/src/modules/m_spanningtree/utils.cpp
+++ b/src/modules/m_spanningtree/utils.cpp
@@ -536,7 +536,9 @@ void SpanningTreeUtilities::ReadConfiguration(bool rebind)
}
- L.NextConnectTime = ServerInstance->Time() + L.AutoConnect;
+ // Fix: Only trip autoconnects if this wouldn't delay autoconnect..
+ if (L.NextConnectTime > ((time_t)(ServerInstance->Time() + L.AutoConnect)))
+ L.NextConnectTime = ServerInstance->Time() + L.AutoConnect;
if (L.Name.find('.') == std::string::npos)
throw CoreException("The link name '"+assign(L.Name)+"' is invalid and must contain at least one '.' character");