mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2024-10-01 08:25:44 -04:00
Only return state events that the AS passed in via state_events_at_start
(MSC2716) (#10552)
* Only return state events that the AS passed in via state_events_at_start As discovered by @Half-Shot in https://github.com/matrix-org/matrix-doc/pull/2716#discussion_r684158448 Part of MSC2716 * Add changelog * Fix changelog extension
This commit is contained in:
parent
fe1d0c8618
commit
8c654b7309
1
changelog.d/10552.misc
Normal file
1
changelog.d/10552.misc
Normal file
@ -0,0 +1 @@
|
|||||||
|
Update `/batch_send` endpoint to only return `state_events` created by the `state_events_from_before` passed in.
|
@ -437,6 +437,7 @@ class RoomBatchSendEventRestServlet(TransactionRestServlet):
|
|||||||
prev_state_ids = list(prev_state_map.values())
|
prev_state_ids = list(prev_state_map.values())
|
||||||
auth_event_ids = prev_state_ids
|
auth_event_ids = prev_state_ids
|
||||||
|
|
||||||
|
state_events_at_start = []
|
||||||
for state_event in body["state_events_at_start"]:
|
for state_event in body["state_events_at_start"]:
|
||||||
assert_params_in_dict(
|
assert_params_in_dict(
|
||||||
state_event, ["type", "origin_server_ts", "content", "sender"]
|
state_event, ["type", "origin_server_ts", "content", "sender"]
|
||||||
@ -502,6 +503,7 @@ class RoomBatchSendEventRestServlet(TransactionRestServlet):
|
|||||||
)
|
)
|
||||||
event_id = event.event_id
|
event_id = event.event_id
|
||||||
|
|
||||||
|
state_events_at_start.append(event_id)
|
||||||
auth_event_ids.append(event_id)
|
auth_event_ids.append(event_id)
|
||||||
|
|
||||||
events_to_create = body["events"]
|
events_to_create = body["events"]
|
||||||
@ -651,7 +653,7 @@ class RoomBatchSendEventRestServlet(TransactionRestServlet):
|
|||||||
event_ids.append(base_insertion_event.event_id)
|
event_ids.append(base_insertion_event.event_id)
|
||||||
|
|
||||||
return 200, {
|
return 200, {
|
||||||
"state_events": auth_event_ids,
|
"state_events": state_events_at_start,
|
||||||
"events": event_ids,
|
"events": event_ids,
|
||||||
"next_chunk_id": insertion_event["content"][
|
"next_chunk_id": insertion_event["content"][
|
||||||
EventContentFields.MSC2716_NEXT_CHUNK_ID
|
EventContentFields.MSC2716_NEXT_CHUNK_ID
|
||||||
|
Loading…
Reference in New Issue
Block a user