浏览代码

Fix Matrix read receipt handling too

Tulir Asokan 3 年之前
父节点
当前提交
7bb629d199
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      portal.go

+ 3 - 1
portal.go

@@ -2204,7 +2204,9 @@ func (portal *Portal) HandleMatrixReadReceipt(sender *User, eventID id.EventID,
 	}
 
 	messages := portal.bridge.DB.Message.GetMessagesBetween(portal.Key, prevTimestamp, maxTimestamp)
-	sender.SetLastReadTS(portal.Key, messages[len(messages)-1].Timestamp)
+	if len(messages) > 0 {
+		sender.SetLastReadTS(portal.Key, messages[len(messages)-1].Timestamp)
+	}
 	groupedMessages := make(map[types.JID][]types.MessageID)
 	for _, msg := range messages {
 		groupedMessages[msg.Sender] = append(groupedMessages[msg.Sender], msg.JID)