diff options
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/channel-rec.h | 1 | ||||
-rw-r--r-- | src/core/channels.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/core/channel-rec.h b/src/core/channel-rec.h index 2ff6a536..f3ec5f8d 100644 --- a/src/core/channel-rec.h +++ b/src/core/channel-rec.h @@ -22,6 +22,7 @@ unsigned int synced:1; /* Channel synced - all queries done */ unsigned int joined:1; /* Have we even received JOIN event for this channel? */ unsigned int left:1; /* You just left the channel */ unsigned int kicked:1; /* You just got kicked */ +unsigned int session_rejoin:1; /* This channel was joined with /UPGRADE */ unsigned int destroying:1; /* Return the information needed to call SERVER_REC->channels_join() for diff --git a/src/core/channels.c b/src/core/channels.c index 8dd63ab7..6add0b82 100644 --- a/src/core/channels.c +++ b/src/core/channels.c @@ -199,6 +199,9 @@ void channel_send_autocommands(CHANNEL_REC *channel) g_return_if_fail(IS_CHANNEL(channel)); + if (channel->session_rejoin) + return; + rec = channel_setup_find(channel->name, channel->server->connrec->chatnet); if (rec == NULL || rec->autosendcmd == NULL || !*rec->autosendcmd) return; |