Changeset 484 in code for trunk/downstream.go


Ignore:
Timestamp:
Mar 29, 2021, 3:07:39 PM (4 years ago)
Author:
contact
Message:

Ensure targets are case-mapped before being passed to messageStore

messageStore isn't aware of the network's case-mapping. We need
to canonicalize the names before passing them to messageStore.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/downstream.go

    r482 r484  
    10021002
    10031003                // Fast-forward history to last message
    1004                 for target, entry := range net.delivered.innerMap {
     1004                for targetCM, entry := range net.delivered.innerMap {
    10051005                        delivered := entry.value.(deliveredClientMap)
    1006                         ch := net.channels.Value(target)
     1006                        ch := net.channels.Value(targetCM)
    10071007                        if ch != nil && ch.Detached {
    10081008                                continue
    10091009                        }
    10101010
    1011                         lastID, err := dc.user.msgStore.LastMsgID(net, target, time.Now())
     1011                        lastID, err := dc.user.msgStore.LastMsgID(net, targetCM, time.Now())
    10121012                        if err != nil {
    10131013                                dc.logger.Printf("failed to get last message ID: %v", err)
     
    10591059
    10601060        limit := 4000
    1061         history, err := dc.user.msgStore.LoadLatestID(net, target, lastDelivered, limit)
     1061        targetCM := net.casemap(target)
     1062        history, err := dc.user.msgStore.LoadLatestID(net, targetCM, lastDelivered, limit)
    10621063        if err != nil {
    10631064                dc.logger.Printf("failed to send implicit history for %q: %v", target, err)
Note: See TracChangeset for help on using the changeset viewer.