Changeset 499 in code for trunk/upstream.go
- Timestamp:
- Apr 13, 2021, 5:11:05 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/upstream.go
r498 r499 392 392 if ch != nil { 393 393 if ch.Detached { 394 uc.handleDetachedMessage( msg.Prefix.Name, text, ch)394 uc.handleDetachedMessage(ch, msg) 395 395 } 396 396 397 highlight := msg.Prefix.Name != uc.nick && isHighlight(text, uc.nick)397 highlight := uc.network.isHighlight(msg) 398 398 if ch.DetachOn == FilterMessage || ch.DetachOn == FilterDefault || (ch.DetachOn == FilterHighlight && highlight) { 399 399 uc.updateChannelAutoDetach(target) … … 1438 1438 } 1439 1439 1440 func (uc *upstreamConn) handleDetachedMessage(sender string, text string, ch *Channel) { 1441 highlight := sender != uc.nick && isHighlight(text, uc.nick) 1442 if ch.RelayDetached == FilterMessage || ((ch.RelayDetached == FilterHighlight || ch.RelayDetached == FilterDefault) && highlight) { 1440 func (uc *upstreamConn) handleDetachedMessage(ch *Channel, msg *irc.Message) { 1441 if uc.network.detachedMessageNeedsRelay(ch, msg) { 1443 1442 uc.forEachDownstream(func(dc *downstreamConn) { 1444 if highlight { 1445 sendServiceNOTICE(dc, fmt.Sprintf("highlight in %v: <%v> %v", dc.marshalEntity(uc.network, ch.Name), sender, text)) 1446 } else { 1447 sendServiceNOTICE(dc, fmt.Sprintf("message in %v: <%v> %v", dc.marshalEntity(uc.network, ch.Name), sender, text)) 1448 } 1449 }) 1450 } 1451 if ch.ReattachOn == FilterMessage || (ch.ReattachOn == FilterHighlight && highlight) { 1443 dc.relayDetachedMessage(uc.network, msg) 1444 }) 1445 } 1446 if ch.ReattachOn == FilterMessage || (ch.ReattachOn == FilterHighlight && uc.network.isHighlight(msg)) { 1452 1447 uc.network.attach(ch) 1453 1448 if err := uc.srv.db.StoreChannel(uc.network.ID, ch); err != nil { … … 1744 1739 // Don't forward messages if it's a detached channel 1745 1740 ch := uc.network.channels.Value(target) 1746 if ch != nil && ch.Detached { 1747 return 1748 } 1741 detached := ch != nil && ch.Detached 1749 1742 1750 1743 uc.forEachDownstream(func(dc *downstreamConn) { 1751 if dc != origin || dc.caps["echo-message"]{1744 if !detached && (dc != origin || dc.caps["echo-message"]) { 1752 1745 dc.sendMessageWithID(dc.marshalMessage(msg, uc.network), msgID) 1753 1746 } else {
Note:
See TracChangeset
for help on using the changeset viewer.