summary refs log tree commit diff
path: root/synapse/handlers
diff options
context:
space:
mode:
authorOlivier Wilkinson (reivilibre) <oliverw@matrix.org>2021-09-30 11:43:38 +0100
committerOlivier Wilkinson (reivilibre) <oliverw@matrix.org>2021-09-30 11:43:38 +0100
commit4cb6ffdf46e51a0995a2bc34e00598f5760493c2 (patch)
tree8b62d36a59423215ede6e4b72d2e3c463f8fdb83 /synapse/handlers
parentMerge remote-tracking branch 'origin/release-v1.44' into matrix-org-hotfixes (diff)
parentFix event context for outliers in important MSC2716 spot (#10938) (diff)
downloadsynapse-4cb6ffdf46e51a0995a2bc34e00598f5760493c2.tar.xz
Merge branch 'release-v1.44' into matrix-org-hotfixes
Diffstat (limited to 'synapse/handlers')
-rw-r--r--synapse/handlers/message.py13
-rw-r--r--synapse/handlers/presence.py4
2 files changed, 7 insertions, 10 deletions
diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py

index fb3aa6a83d..6ee21e8eed 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py
@@ -952,18 +952,13 @@ class EventCreationHandler: depth=depth, ) - old_state = None - # Pass on the outlier property from the builder to the event # after it is created if builder.internal_metadata.outlier: - event.internal_metadata.outlier = builder.internal_metadata.outlier - - # Calculate the state for outliers that pass in their own `auth_event_ids` - if auth_event_ids: - old_state = await self.store.get_events_as_list(auth_event_ids) - - context = await self.state.compute_event_context(event, old_state=old_state) + event.internal_metadata.outlier = True + context = EventContext.for_outlier() + else: + context = await self.state.compute_event_context(event) if requester: context.app_service = requester.app_service diff --git a/synapse/handlers/presence.py b/synapse/handlers/presence.py
index 983c837c66..404afb9402 100644 --- a/synapse/handlers/presence.py +++ b/synapse/handlers/presence.py
@@ -52,6 +52,7 @@ import synapse.metrics from synapse.api.constants import EventTypes, Membership, PresenceState from synapse.api.errors import SynapseError from synapse.api.presence import UserPresenceState +from synapse.appservice import ApplicationService from synapse.events.presence_router import PresenceRouter from synapse.logging.context import run_in_background from synapse.logging.utils import log_function @@ -1521,10 +1522,11 @@ class PresenceEventSource(EventSource[int, UserPresenceState]): user: UserID, from_key: Optional[int], limit: Optional[int] = None, - room_ids: Optional[List[str]] = None, + room_ids: Optional[Collection[str]] = None, is_guest: bool = False, explicit_room_id: Optional[str] = None, include_offline: bool = True, + service: Optional[ApplicationService] = None, ) -> Tuple[List[UserPresenceState], int]: # The process for getting presence events are: # 1. Get the rooms the user is in.