Loop: catch reconnection errors; writeLoop: only log.Print if Debug

This commit is contained in:
joe
2013-09-25 23:37:11 -04:00
parent 14b5cb8b16
commit c10849b4c0
3 changed files with 15 additions and 3 deletions

13
irc.go
View File

@@ -74,7 +74,9 @@ func (irc *Connection) writeLoop() {
break
}
irc.log.Printf("--> %s\n", b)
if irc.Debug {
irc.log.Printf("--> %s\n", b)
}
_, err := irc.socket.Write([]byte(b))
if err != nil {
irc.Error <- err
@@ -120,7 +122,14 @@ func (irc *Connection) Loop() {
}
irc.log.Printf("Error: %s\n", err)
irc.Disconnect()
irc.Connect(irc.server)
for !irc.stopped {
if err = irc.Connect(irc.server); err != nil {
irc.log.Printf("Error: %s\n", err)
time.Sleep(1 * time.Second)
} else {
break
}
}
}
}