]> Cypherpunks.ru repositories - goircd.git/blobdiff - daemon.go
Split long lines
[goircd.git] / daemon.go
index 6b44039651032b54ef0e769416581b563983a3f9..30d8c5ddc77a8e8980dcfa0a19e8d106e11ab4bb 100644 (file)
--- a/daemon.go
+++ b/daemon.go
@@ -180,6 +180,8 @@ func (daemon *Daemon) ClientRegister(client *Client, command string, cols []stri
                        return
                }
                nickname := cols[1]
+               // Compatibility with some clients prepending colons to nickname
+               nickname = strings.TrimPrefix(nickname, ":")
                for existingClient := range daemon.clients {
                        if existingClient.nickname == nickname {
                                client.ReplyParts("433", "*", nickname, "Nickname is already in use")
@@ -456,6 +458,7 @@ func (daemon *Daemon) Processor(events <-chan ClientEvent) {
                                r, found := daemon.rooms[target]
                                if !found {
                                        client.ReplyNoNickChan(target)
+                                       continue
                                }
                                daemon.roomSinks[r] <- ClientEvent{
                                        client,