forked from MirrorHub/synapse
Filter events_before and events_after in /context requests
While the current version of the spec doesn't say much about how this endpoint uses filters (see https://github.com/matrix-org/matrix-doc/issues/2338), the current implementation is that some fields of an EventFilter apply (the ones that are used when running the SQL query) and others don't (the ones that are used by the filter itself) because we don't call event_filter.filter(...). This seems counter-intuitive and probably not what we want so this commit fixes it.
This commit is contained in:
parent
4e1c7b79fa
commit
1dffa78701
1 changed files with 4 additions and 2 deletions
|
@ -874,8 +874,10 @@ class RoomContextHandler(object):
|
|||
room_id, event_id, before_limit, after_limit, event_filter
|
||||
)
|
||||
|
||||
results["events_before"] = yield filter_evts(results["events_before"])
|
||||
results["events_after"] = yield filter_evts(results["events_after"])
|
||||
filtered_before_events = event_filter.filter(results["events_before"])
|
||||
results["events_before"] = yield filter_evts(filtered_before_events)
|
||||
filtered_after_events = event_filter.filter(results["events_after"])
|
||||
results["events_after"] = yield filter_evts(filtered_after_events)
|
||||
results["event"] = event
|
||||
|
||||
if results["events_after"]:
|
||||
|
|
Loading…
Reference in a new issue