Fix conditions failing if min_depth = 0

This could result in Synapse not fetching prev_events for new events in the room if it has missed some events.
This commit is contained in:
Brendan Abolivier 2020-01-07 12:08:58 +00:00
parent 0495097a7f
commit cd428a93e2
No known key found for this signature in database
GPG key ID: 1E015C145F1916CD
2 changed files with 3 additions and 3 deletions

View file

@ -248,13 +248,13 @@ class FederationHandler(BaseHandler):
prevs = set(pdu.prev_event_ids())
seen = await self.store.have_seen_events(prevs)
if min_depth and pdu.depth < min_depth:
if min_depth is not None and pdu.depth < min_depth:
# This is so that we don't notify the user about this
# message, to work around the fact that some events will
# reference really really old events we really don't want to
# send to the clients.
pdu.internal_metadata.outlier = True
elif min_depth and pdu.depth > min_depth:
elif min_depth is not None and pdu.depth > min_depth:
missing_prevs = prevs - seen
if sent_to_us_directly and missing_prevs:
# If we're missing stuff, ensure we only fetch stuff one