diff --git a/synapse/handlers/sliding_sync/room_lists.py b/synapse/handlers/sliding_sync/room_lists.py
index 4718e8092b..0e6cb28524 100644
--- a/synapse/handlers/sliding_sync/room_lists.py
+++ b/synapse/handlers/sliding_sync/room_lists.py
@@ -40,11 +40,6 @@ from synapse.api.constants import (
)
from synapse.events import StrippedStateEvent
from synapse.events.utils import parse_stripped_state_event
-from synapse.handlers.sliding_sync.types import (
- HaveSentRoomFlag,
- PerConnectionState,
- RoomSyncConfig,
-)
from synapse.logging.opentracing import start_active_span, trace
from synapse.storage.databases.main.state import (
ROOM_UNKNOWN_SENTINEL,
@@ -61,7 +56,14 @@ from synapse.types import (
StreamToken,
UserID,
)
-from synapse.types.handlers import OperationType, SlidingSyncConfig, SlidingSyncResult
+from synapse.types.handlers.sliding_sync import (
+ HaveSentRoomFlag,
+ OperationType,
+ PerConnectionState,
+ RoomSyncConfig,
+ SlidingSyncConfig,
+ SlidingSyncResult,
+)
from synapse.types.state import StateFilter
if TYPE_CHECKING:
@@ -279,15 +281,11 @@ class SlidingSyncRoomLists:
room_id
)
if existing_room_sync_config is not None:
- existing_room_sync_config.combine_room_sync_config(
+ room_sync_config = existing_room_sync_config.combine_room_sync_config(
room_sync_config
)
- else:
- # Make a copy so if we modify it later, it doesn't
- # affect all references.
- relevant_room_map[room_id] = (
- room_sync_config.deep_copy()
- )
+
+ relevant_room_map[room_id] = room_sync_config
room_ids_in_list.append(room_id)
@@ -351,11 +349,13 @@ class SlidingSyncRoomLists:
# and need to fetch more info about.
existing_room_sync_config = relevant_room_map.get(room_id)
if existing_room_sync_config is not None:
- existing_room_sync_config.combine_room_sync_config(
- room_sync_config
+ room_sync_config = (
+ existing_room_sync_config.combine_room_sync_config(
+ room_sync_config
+ )
)
- else:
- relevant_room_map[room_id] = room_sync_config
+
+ relevant_room_map[room_id] = room_sync_config
# Filtered subset of `relevant_room_map` for rooms that may have updates
# (in the event stream)
|