diff options
| author | Luke Bratch <luke@bratch.co.uk> | 2020-10-21 22:07:17 +0100 | 
|---|---|---|
| committer | Luke Bratch <luke@bratch.co.uk> | 2020-10-21 22:07:17 +0100 | 
| commit | 6737c2ec911afd4a62d2961432ea8c784885e641 (patch) | |
| tree | 7ef8e58c82bd29f286efb02c40ab8eeb60c3ffa0 | |
| parent | 5dd40bf9003063fd54071948654bc5a5640de282 (diff) | |
Correct detection of changed nick for updating existing clients when reconnecting to server after a timeout.
| -rw-r--r-- | TODO | 2 | ||||
| -rw-r--r-- | message.c | 2 | 
2 files changed, 1 insertions, 3 deletions
@@ -32,5 +32,3 @@ arrindex() shouldn't return 0 on failure as 0 is a valid index.  Instead return  Make the "channels" configuration file entry an array.  Crash when requesting 30 hour replay. - -Existing clients' own nicks are not updated if we decided the server timed out and reconnected before the server decided we were gone. @@ -108,7 +108,7 @@ int processservermessage(SSL *server_ssl, char *str, struct client *clients, int        // If this is a reconnection, JOIN existing channels and catch clients up again        if (ircdstate->reconnecting) {          // First tell clients if our nick changed -        if (!strcmp(ircdstate->ircnick, ircdstate->oldnick)) { +        if (strcmp(ircdstate->ircnick, ircdstate->oldnick)) {            debugprint(DEBUG_SOME, "Telling clients about nick change.\n");            char nickmsg[MAXDATASIZE];            snprintf(nickmsg, MAXDATASIZE, ":%s NICK :%s", ircdstate->oldnick, ircdstate->ircnick);  | 
