aboutsummaryrefslogtreecommitdiff
path: root/connect.go
diff options
context:
space:
mode:
Diffstat (limited to 'connect.go')
-rw-r--r--connect.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/connect.go b/connect.go
index 743f00d..632d203 100644
--- a/connect.go
+++ b/connect.go
@@ -4,6 +4,7 @@ import (
"fmt"
"log"
"net"
+ "time"
"github.com/HimbeerserverDE/mt"
)
@@ -42,8 +43,18 @@ func connect(conn net.Conn, name string, cc *ClientConn) *ServerConn {
cc.mu.Lock()
cc.srv = sc
+ cc.fallbackFrom = sc.name
cc.mu.Unlock()
+ // Mark fallback as done after a connection has persisted for some time.
+ go func() {
+ time.Sleep(10 * time.Second)
+
+ if cc.srv == sc {
+ cc.whyKicked = nil
+ }
+ }()
+
go handleSrv(sc)
return sc
}