diff --git a/bridge/irc/handlers.go b/bridge/irc/handlers.go index a5df2d53..ce4f0445 100644 --- a/bridge/irc/handlers.go +++ b/bridge/irc/handlers.go @@ -92,10 +92,6 @@ func (b *Birc) handleJoinPart(client *girc.Client, event girc.Event) { return } b.Log.Debugf("<= Sending JOIN_LEAVE event from %s to gateway", b.Account) - // QUIT isn't channel bound, happens for all channels on the bridge - if event.Command == "QUIT" { - channel = "" - } msg := config.Message{Username: "system", Text: event.Source.Name + " " + strings.ToLower(event.Command) + "s", Channel: channel, Account: b.Account, Event: config.EventJoinLeave} b.Log.Debugf("<= Message is %#v", msg) b.Remote <- msg diff --git a/gateway/gateway.go b/gateway/gateway.go index 9957a21d..e76e1d59 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -212,23 +212,6 @@ func (gw *Gateway) getDestChannel(msg *config.Message, dest bridge.Bridge) []con return channels } - // irc quit is for the whole bridge, isn't a per channel quit. - // channel is empty when we quit - if msg.Event == config.EventJoinLeave && getProtocol(msg) == "irc" && msg.Channel == "" { - // if we only have one channel on this irc bridge it's got to be the sending one. - // don't send it back - if dest.Account == msg.Account && len(dest.Channels) == 1 && dest.Protocol == "irc" { - return channels - } - for _, channel := range gw.Channels { - if channel.Account == dest.Account && strings.Contains(channel.Direction, "out") && - gw.validGatewayDest(msg) { - channels = append(channels, *channel) - } - } - return channels - } - // if source channel is in only, do nothing for _, channel := range gw.Channels { // lookup the channel from the message