From 058081e68e4e23400645c6206cedddba8a31507e Mon Sep 17 00:00:00 2001
From: Sam Wedgwood <28223854+swedgwood@users.noreply.github.com>
Date: Tue, 12 Sep 2023 16:32:24 +0100
Subject: [PATCH] [pseudoIDs] changing event ID fix (#3195)

power levels events in pseudo IDs sometimes changed event IDs (this was
already fixed earlier, but one of the edgecases was not covered, and is
now covered)

Signed-off-by: `Sam Wedgwood <sam@wedgwood.dev>`
---
 syncapi/streams/stream_pdu.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/syncapi/streams/stream_pdu.go b/syncapi/streams/stream_pdu.go
index ee524f726..3b27acd8a 100644
--- a/syncapi/streams/stream_pdu.go
+++ b/syncapi/streams/stream_pdu.go
@@ -500,7 +500,7 @@ func (p *PDUStreamProvider) updatePowerLevelEvent(ctx context.Context, ev *rstyp
 	prevContent := gjson.GetBytes(ev.JSON(), "unsigned.prev_content")
 	if !prevContent.Exists() {
 		var evNew gomatrixserverlib.PDU
-		evNew, err = gomatrixserverlib.MustGetRoomVersion(ev.Version()).NewEventFromTrustedJSON(newEv, false)
+		evNew, err = gomatrixserverlib.MustGetRoomVersion(ev.Version()).NewEventFromTrustedJSONWithEventID(ev.EventID(), newEv, false)
 		if err != nil {
 			return nil, err
 		}