Tweak removeDuplicates calls to use events instead of recentEvents, since events is *after* history visibility filtering

This commit is contained in:
Neil Alexander 2022-11-03 09:53:56 +00:00
parent 1fcbb9b5e5
commit 5b7281690f
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944

View file

@ -316,7 +316,7 @@ func (p *PDUStreamProvider) addRoomDeltaToResponse(
// left. Anything that appears in the filtered timeline will be removed from the
// "state" section and kept in "timeline".
delta.StateEvents = gomatrixserverlib.HeaderedReverseTopologicalOrdering(
removeDuplicates(delta.StateEvents, recentEvents),
removeDuplicates(delta.StateEvents, events),
gomatrixserverlib.TopologicalOrderByAuthEvents,
)
@ -530,7 +530,7 @@ func (p *PDUStreamProvider) getJoinResponseForCompleteSync(
// If we are limited by the filter AND the history visibility filter
// didn't "remove" events, return that the response is limited.
limited = limited && len(events) == len(recentEvents)
stateEvents = removeDuplicates(stateEvents, recentEvents)
stateEvents = removeDuplicates(stateEvents, events)
if stateFilter.LazyLoadMembers {
if err != nil {
return nil, err