Tulir Asokan преди 3 години
родител
ревизия
372929f454
променени са 4 файла, в които са добавени 12 реда и са изтрити 18 реда
  1. 1 1
      backfillqueue.go
  2. 3 8
      historysync.go
  3. 6 7
      portal.go
  4. 2 2
      puppet.go

+ 1 - 1
backfillqueue.go

@@ -32,7 +32,7 @@ type BackfillQueue struct {
 }
 
 func (bq *BackfillQueue) ReCheck() {
-	bq.log.Info("Sending re-checks to %d channels", len(bq.reCheckChannels))
+	bq.log.Infofln("Sending re-checks to %d channels", len(bq.reCheckChannels))
 	for _, channel := range bq.reCheckChannels {
 		go func(c chan bool) {
 			c <- true

+ 3 - 8
historysync.go

@@ -295,12 +295,11 @@ func (user *User) shouldCreatePortalForHistorySync(conv *database.HistorySyncCon
 		return true
 	} else if !user.bridge.Config.Bridge.HistorySync.CreatePortals {
 		user.log.Debugfln("Not creating portal for %s: creating rooms from history sync is disabled", portal.Key.JID)
+		return false
 	} else {
 		// Portal doesn't exist, but should be created
 		return true
 	}
-	// Portal shouldn't be created, reason logged above
-	return false
 }
 
 func (user *User) handleHistorySync(backfillQueue *BackfillQueue, evt *waProto.HistorySync) {
@@ -451,8 +450,7 @@ var (
 	PortalCreationDummyEvent = event.Type{Type: "fi.mau.dummy.portal_created", Class: event.MessageEventType}
 	PreBackfillDummyEvent    = event.Type{Type: "fi.mau.dummy.pre_backfill", Class: event.MessageEventType}
 
-	BackfillEndDummyEvent = event.Type{Type: "fi.mau.dummy.backfill_end", Class: event.MessageEventType}
-	HistorySyncMarker     = event.Type{Type: "org.matrix.msc2716.marker", Class: event.MessageEventType}
+	HistorySyncMarker = event.Type{Type: "org.matrix.msc2716.marker", Class: event.MessageEventType}
 
 	BackfillStatusEvent = event.Type{Type: "com.beeper.backfill_status", Class: event.StateEventType}
 )
@@ -506,7 +504,7 @@ func (portal *Portal) backfill(source *User, messages []*waProto.WebMessageInfo,
 		addedMembers[puppet.MXID] = struct{}{}
 	}
 
-	portal.log.Infofln("Processing history sync with %d messages (forward: %t, prev: %s, batch: %s)", len(messages), isForward, req.PrevEventID, req.BatchID)
+	portal.log.Infofln("Processing history sync with %d messages (forward: %t, latest: %t, prev: %s, batch: %s)", len(messages), isForward, isLatest, req.PrevEventID, req.BatchID)
 	// The messages are ordered newest to oldest, so iterate them in reverse order.
 	for i := len(messages) - 1; i >= 0; i-- {
 		webMsg := messages[i]
@@ -710,9 +708,6 @@ func (portal *Portal) finishBatch(txn *sql.Tx, eventIDs []id.EventID, infos []*w
 }
 
 func (portal *Portal) sendPostBackfillDummy(lastTimestamp time.Time, insertionEventId id.EventID) {
-	// TODO remove after clients stop using this
-	_, _ = portal.MainIntent().SendMessageEvent(portal.MXID, BackfillEndDummyEvent, struct{}{})
-
 	resp, err := portal.MainIntent().SendMessageEvent(portal.MXID, HistorySyncMarker, map[string]interface{}{
 		"org.matrix.msc2716.marker.insertion": insertionEventId,
 		//"m.marker.insertion":                  insertionEventId,

+ 6 - 7
portal.go

@@ -242,8 +242,6 @@ type Portal struct {
 	recentlyHandledLock  sync.Mutex
 	recentlyHandledIndex uint8
 
-	privateChatBackfillInvitePuppet func()
-
 	currentlyTyping     []id.UserID
 	currentlyTypingLock sync.Mutex
 
@@ -271,16 +269,17 @@ func (portal *Portal) handleMessageLoopItem(msg PortalMessage) {
 	}
 	portal.latestEventBackfillLock.Lock()
 	defer portal.latestEventBackfillLock.Unlock()
-	if msg.evt != nil {
+	switch {
+	case msg.evt != nil:
 		portal.handleMessage(msg.source, msg.evt)
-	} else if msg.receipt != nil {
+	case msg.receipt != nil:
 		portal.handleReceipt(msg.receipt, msg.source)
-	} else if msg.undecryptable != nil {
+	case msg.undecryptable != nil:
 		portal.handleUndecryptableMessage(msg.source, msg.undecryptable)
-	} else if msg.fake != nil {
+	case msg.fake != nil:
 		msg.fake.ID = "FAKE::" + msg.fake.ID
 		portal.handleFakeMessage(*msg.fake)
-	} else {
+	default:
 		portal.log.Warnln("Unexpected PortalMessage with no message: %+v", msg)
 	}
 }

+ 2 - 2
puppet.go

@@ -137,8 +137,8 @@ func (br *WABridge) GetIGhost(id id.UserID) bridge.Ghost {
 	return p
 }
 
-func (p *Puppet) GetMXID() id.UserID {
-	return p.MXID
+func (puppet *Puppet) GetMXID() id.UserID {
+	return puppet.MXID
 }
 
 func (br *WABridge) GetAllPuppetsWithCustomMXID() []*Puppet {